Как использовать внешние плагины через файл конфигурации (конфигурация времени выполнения) с AutoFac 5C#

Место общения программистов C#
Ответить
Anonymous
 Как использовать внешние плагины через файл конфигурации (конфигурация времени выполнения) с AutoFac 5

Сообщение Anonymous »

Я пытаюсь настроить простой .net Core 3.1 , который использует autofac 5 контейнер Ioc.

Я добавил ссылку на последнюю autofac.configuration 5.0.0 package. Руководство): < /p>

{
"components": [
{
"type": "Implementations.ImplementationN, Implementations",
"services": [
{
"type": "Interfaces.InterfaceN, Interfaces"
}
]
}
]
}
< /code>

Я использую следующий код (в соответствии с тем же руководством): < /p>

using Interfaces;
using Autofac;
using Autofac.Configuration;
using Microsoft.Extensions.Configuration;
using System;

------------------------
var config = new ConfigurationBuilder();
config.AddJsonFile("config.json");

var module = new ConfigurationModule(config.Build());

var builder = new ContainerBuilder();
builder.RegisterModule(module);

var container = builder.Build();
------------------------
< /code>

Но я получаю system.invalidoperationexception < /strong>: < /p>


Реализации типа '. Это может потребовать квалификации сборки,
, например, "Mytype, myassembly" < /p>
< /blockquote>

Я загрузил свой код в GitHub. Признается любая помощь.

p.s.
Visual Studio 2019 16.4.5 Enterprise, Windows 10 1909 x64 Professional

обновление: , чтобы уточнить больше - моя последняя цель - иметь Interfaces. реализации.dll со ссылкой на interfaces.dll и test.exe со ссылкой на только interfaces.dll (и пакет Autofac, конечно). Я ожидаю, что Autofac загрузит конкретный класс из определенной сборки (которая указана в config.json ) через отражение. Это было возможно с контейнером Unity , и я ожидал достичь того же самого с autofac ioc .

еще раз: мне нужен повышенное покрытие без каких -либо рекомендаций, ссылающихся.>

Подробнее здесь: https://stackoverflow.com/questions/602 ... th-autofac
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»