Описание тега contextual-binding

2 ответа

Привязки на основе параметров в ninject 2.0

Я хочу использовать условное связывание в ninject, основываясь на переданных параметрах. У меня есть что-то вроде ниже: public class Subject { } public interface ITarget { } public class Target1 : ITarget { } public class Target2 : ITarget { } И теп…
1 ответ

Привязать интерфейс к множественной конкретной реализации с аргументом конструктора

Я пытаюсь сделать контекстное связывание, но не могу связать конкретный интерфейс реализации в качестве аргумента конструктора. Ninject версия: 3.2.0.0 Моя структура выглядит следующим образом: INotifier 1. XNotifier 2. YNotifier IPublisher 1. APubl…
1 ответ

Drupal7: Как мог Контекстный фильтр: Содержимое: Nid возвращает TNID вместо NID в Views3

У меня есть контекстный фильтр: Содержимое: Nid в Views3, который я хочу вернуть TNID вместо NID, когда значение фильтра НЕ доступно. Я старался $node=node_load($argument); $argument = $node->tnid; return $argument; или же $node=node_load(arg(1))…
1 ответ

Контейнерная привязка tdd ioc

Мне нужна помощь с использованием контекстного связывания с ninject. У меня есть что-то вроде этого: public interface ISound { String Sound(); } public class Cat : Animal { private string category; private ISound sound; public Cat(ISound sound, int …
12 апр '17 в 14:34
1 ответ

Что приводит к тому, что свойство Tint объекта Ninject.Activation.IRequest имеет значение null

Вероятно, простой вопрос, но я не нашел ничего в документации или на SO, что прямо отвечает на него. Я должен был работать с Ninject When(Func<IRequest, bool> condition) метод расширения в первый раз, и немного повесил трубку с исключениями ну…
17 июн '13 в 16:03
1 ответ

Ninject Contextual Binding в RunTime

Я пытаюсь понять Ninject Contextual Binding. Я понимаю сценарии, в которых я знаю свой контекст во время разработки. например, я понимаю, что могу использовать именованные атрибуты для привязки объекта БД к фиктивной БД, когда я хочу использовать ег…
1 ответ

Инъекционное связывание на основе свойства объекта? Конвенция или контекстная привязка?

У меня есть интерфейс: public interface IInterface { string Get(obj o); } и у меня есть 2 класса: public class C1 : IInterface { string Get(obj o); } public class C2 : IInterface { string Get(obj o); } Я хотел бы отправить в o, а затем дать Ninject …
1 ответ

Как я могу получить атрибут и свойства при использовании контекстной привязки Ninject?

У меня есть конструктор [ReadFromFile(@"C:\SampleData\login.json")] public AccountController(IReadRepository<LoginMockDataModel> repository, string filePath) : base(repository) { } Атрибут содержит свойство "FilePath". public string FilePath {…
1 ответ

NInject контекстная привязка, когда метод вызывается слишком много раз

interface IWarrior { } class Samurai : IWarrior { } public class Program { public static void Main(string[] args) { var kernel = new StandardKernel(); kernel.Bind<IWarrior>().To<Samurai>().When(i => { Console.WriteLine("test"); return…
0 ответов

Неполная проблема с контекстной привязкой и Lazy<T>

Кажется, Ninject неправильно использует contstraint WhenInjectedInto, в то же время используя Lazy . Проверьте следующий пример. OnLandAttack и OnLandAttackLazy должны использовать экземпляр Samurai. Но версия Lazy заканчивается экземпляром SpecialN…
1 ответ

Ninject Get<T> WhenTargetHas<T>

Поэтому я использую Ninject, а именно контекстную привязку следующим образом: Bind&lt;IBlah&gt;().ToMethod(x =&gt; FirstBlahProvider.Instance.GiveMeOne()).WhenTargetHas&lt;FirstAttribute&gt;().InRequestScope(); Bind&lt;IBlah&gt;().ToMethod(x =&gt; S…
22 ноя '12 в 10:22
1 ответ

Autofac vs Ninject контекстная привязка?

1) Autofac и Ninject, какой из них лучше в контекстной привязке? 2) С помощью Ninject я могу связываться с типами в определенном пространстве имен: Bind&lt;A&gt;().To&lt;B&gt;().When(context =&gt; context.ParentContext.Binding.Service.Namespace == "…
30 янв '11 в 00:00
1 ответ

Контекстные привязки с Ninject 2.0

В Ninject 1.0 у меня были следующие обязательные определения: Bind&lt;ITarget&gt;().To&lt;Target1&gt;().Only(When.Context.Variable("variable").EqualTo(true)); Bind&lt;ITarget&gt;().To&lt;Target2&gt;(); Учитывая такие привязки у меня были звонки: ITa…
1 ответ

Исключить контекстную привязку для 2+ зависимых классов с разными именами для одного и того же параметра конструктора

Возникают проблемы с выяснением того, как управлять контекстной привязкой в ​​сценарии, где два класса имеют одинаковую базовую интерфейсную зависимость, но параметр ctor каждого класса назван по-разному. Псевдокод ниже, чтобы продемонстрировать мою…
1 ответ

Ninject Binding "все наследуется от x"

Довольно обычный сценарий: public class A { } public class B:A {} public class C:A {} Мне действительно интересно, возможно ли создать Ninject Bindings, которые разрешают все наследования от A, как показано ниже: Bind&lt;A&gt;().ToMethod(ctx =&gt; p…
1 ответ

Ограничение Ninject Binding, которое ищет, чтобы найти тип

У меня есть иерархия классов, как это (упрощенно): class Connection { } interface IService&lt;T&gt; { } class ServiceImplementation : IService&lt;int&gt; { public ServiceImplementation(Connection) { } } interface IConnectionConfiguration { public vo…
26 сен '11 в 07:04
1 ответ

Как избежать необходимости ссылки на Ninject в целевой сборке внедрения при использовании контекстной привязки

Я смотрю на контекстную привязку с Ninject. Это для случаев, когда у вас есть несколько реализаций некоторой абстракции, и контекст в целевом классе внедрения определяет, какая из этих реализаций вводится. В документации пример использования именова…
7 ответов

Два типа используют подзависимость - как использовать разные реализации

Скажем, мы регистрируем два типа, RootA а также RootBчто каждый из них зависит от ISubdependency, Совместно использовать одну и ту же реализацию зависимостей легко: services.AddSingleton&lt;ISubdependency, SubdependencyZ&gt;(); services.AddSingleton…
0 ответов

\GuzzleHttp\ Клиентское разрешение зависает, если контекстная привязка выполняется с помощью make() или makeWith()

Я пишу простую API-оболочку, и этой оболочке нужен настроенный экземпляр GuzzleHttp\Client в качестве зависимости. use GuzzleHttp\Client; class Api { private $client; public function __construct(Client $client) { $this-&gt;client = $client; } } Все …
19 июн '20 в 10:51
0 ответов

Контекстная привязка Laravel более специфична для методов, а не только для класса

Я пытаюсь понять привязку laravel. скажем, у меня есть UploadFileController.php Route::post('/upload/images', 'UploadFilesController@uploadImage'); Route::post('/upload/pdf', 'UploadFilesController@uploadPdf'); затем в контроллере class UploadFilesC…
16 ноя '20 в 00:28