6 / 6 / 1
Регистрация: 25.02.2016
Сообщений: 342

Autofac Инъекция в метод

21.07.2016, 02:57. Показов 5523. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Есть у меня контейнер с необходимыми зависимостями, помеченными SingleInstance.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var builder = new ContainerBuilder();
builder.RegisterType<A>().AsSelf().SingleInstance();
builder.RegisterType<B>().AsSelf().SingleInstance();
//A и B - какие-то произвольные классы
var container = builder.Build();
var obj = container.Resolve<C>(); //Для удобства класс C ниже
 
class C
{
     public C(A a, B b)
     {
         //Все хорошо, зависимости переданы
     }
 
     public Foo(A a, B b)
     {
        //Если ли варианты, чтобы получить эти зависимости здесь?
     }
}
"Если ли варианты, чтобы получить эти зависимости здесь?" - проблемы бы не было, если бы параметры были именно A и B. Проблема в том, что я хочу добиться эффекта, как с конструктором - в конструкторе пишу нужное количество параметров в нужном мне порядке и Autofac сам подставляет зависимости.
Можно ли как-нибудь вызвать метод объекта с передачей туда зависимостей, количество которых неизвестно?
Грубо говоря, что-то типа этого:
C#
1
container.Resolve<C>(Foo); //Параметры для Foo сами подставятся ???
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.07.2016, 02:57
Ответы с готовыми решениями:

ASP + Autofac + SignalR
Добрый день, столкнулся со следующий проблемой, нужно Autofac отрезолвить ILifetimeScope в конструкторе Hub-а, фишка в том, что если...

Взаимная работа MvcSiteMapProvider с Autofac?
У себя на сайте, для реализации хлебных крошек заюзал MvcSiteMapProvider. Также а сайте использую Autofac. Но он почему-то не действует на...

Как правильно произносится Autofac (Dependecy Injection)
Привет. Я догадываюсь, что можно на ютубе посмотреть несколько видюх и какой-то да произнесут. Но я на работе, колонок нет, а интересно...

22
 Аватар для Andrey-MSK
3390 / 2276 / 388
Регистрация: 14.08.2018
Сообщений: 7,696
Записей в блоге: 4
06.12.2023, 13:58
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от DLD Посмотреть сообщение
поэтому рассматриваю законченные проекты
DI от Microsoft полностью интегрирован в NET и NET Framework. Так что выбор очевиден.
Для его работы нужно установить всего один пакет из NuGet - Microsoft.Extensions.DependencyInjection.
0
Эксперт .NET
 Аватар для Usaga
14731 / 9507 / 1362
Регистрация: 21.01.2016
Сообщений: 35,851
06.12.2023, 14:25
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
DI от Microsoft полностью интегрирован в NET и NET Framework. Так что выбор очевиден.
Не интегрирован, а надо ставить пакетом) И, кстати, его возможности уступают тому же автофаку. Что не факт, что для ТС проблема. Но мы на проекте уже столкнулись.
0
 Аватар для Andrey-MSK
3390 / 2276 / 388
Регистрация: 14.08.2018
Сообщений: 7,696
Записей в блоге: 4
06.12.2023, 14:30
Цитата Сообщение от Usaga Посмотреть сообщение
Не интегрирован, а надо ставить пакетом)
Ну я имел ввиду что полностью поддерживается экосистемой, или как это лучше обозвать
Цитата Сообщение от Usaga Посмотреть сообщение
его возможности уступают тому же автофаку
Для стандартных операций запуска и внедрения сервисов его возможностей выше крыши...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.12.2023, 14:30

php инъекция
Доброе время суток. Помогите пожалуйста разобраться с php инъекцией. Есть форма авторизации и к ней надо применить инъекцию что бы зайти...

SQL инъекция
Здравствуйте. Мне сообщили, что в коде одного из плагинов сайта существует возможность включения SQL инъекции в строке 28 &quot;$aid =...

Инъекция кода. C#
Я создал пустую форму. Как с помощью инъекции дописать в нее вызов, например меседжбокса? Добавлено через 47 минут Что никто не...

Инъекция и Сюръекция
Допустим X,Y и Z не пустые множества и f : X → Y и g : Y → Z функции. Доказать, что если g инъективен и g o f сюръективен, то f...

Инъекция кода
Есть Access файл с дополнительными надстройками наверное на vbs. Текущий код не проверяет дублирующие заявки, хотелось бы, чтобы при...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Опции темы

Новые блоги и статьи
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru