2016-10-19 4 views
0

Я следовал примеру здесь http://docs.autofac.org/en/latest/configuration/xml.html, заменяя XML для json, но не могу ничего компилировать. Я ссылаюсь пакет Microsoft.Framework.ConfigurationModel.Xml (версия 1.0.0-beta4), и добавил код:Почему я не могу получить конфигурацию autofac XML для работы

// Add the configuration to the ConfigurationBuilder. 
var config = new ConfigurationBuilder(); 
config.AddXmlFile("something.xml"); 

// Register the ConfigurationModule with Autofac. 
var module = new ConfigurationModule(config.Build()); 
var builder = new ContainerBuilder(); 
builder.RegisterModule(module); 

Проблема, метод расширения AddXmlFile() принимает параметр IConfigurationSourceRoot, которую ConfigurationBuilder не является типом. Лужение вокруг, я обнаружил, что метод AddXmlFile() только кажется, нравится объект конфигурации:

var config = new Microsoft.Framework.ConfigurationModel.Configuration(); 
config.AddXmlFile(filename); 

Но нет никакого способа сборки() по классу конфигурации, члена или расширения. Что я не вижу?

ответ

0

Док показывает Microsoft.Extensions.Configuration не Microsoft.Framework.Configuration. Microsoft переименовала много вещей, прежде чем выпускать .NET Core, поэтому кажется, что вы ссылаетесь на неправильную вещь. Попробуйте использовать полные версии всех версий и посмотрите, есть ли у вас больше удачи.

+0

Хороший улов. Не так давно все, что вам нужно, это Autofac.Configuration. Теперь вам понадобится еще 8 других пакетов. Кроме того, json configs работают, но не xml. Это создает дубликат ключа ошибки: <тип модуля = "AnotherModule" /> Dan

+0

Прочитайте документацию. Вам не хватает порядкового наименования элементов XML. http://autofac.readthedocs.io/en/latest/configuration/xml.html –

+0

На самом деле в документах говорится об использовании ординалов для , а не . Из их документа: В любом случае, я попытался добавить атрибут «name» ранее, и он все еще не работает. Это заставляет меня пройти двойную ключевую ошибку прямо в ArgumentNullException. Точная конфигурация работает в json. То, что вы видите, буквально все, что я делаю, включая два модуля. Джонсон. Спасибо за вашу помощь. – Dan

 Смежные вопросы

  • Нет связанных вопросов^_^