Unity2.0 - Можно ли программно указывать сборки и пространства имен для поиска типов? - PullRequest
0 голосов
/ 30 ноября 2010

Я использую Unity2 с конфигурацией XML. Он имеет удобную функцию для указания пространств имен и сборок в конфигурации XML, для которых выполняется автоматический поиск типов, поэтому вам не нужно всегда указывать полное имя или создавать псевдоним.

Можно ли задавать сборки и пространства имен для автоматического поиска типов программно, без их явного перечисления в конфигурации XML? Моя цель - упростить настройку XML для администраторов моего приложения. Типы из двух или трех пространств имен почти всегда будут использоваться при регистрации контейнеров, поэтому я хотел бы, чтобы эти пространства имен автоматически включались в поиск.

1 Ответ

0 голосов
/ 30 ноября 2010

Нет ничего встроенного в явном виде для поддержки этого.

Опция потребует еще несколько шагов в вашем коде.вместо того, чтобы просто вызывать container.LoadConfiguration (), вы вместо этого явно захватите раздел конфигурации:

var section = (UnityConfigurationSection)ConfigurationManager.GetSection("unity");

Затем перейдите в свойства Namespaces или Assemblies и добавьте новый NamespaceElement илиAssemblyElement объекты, указывающие на «стандартные» пространства имен и сборки. Затем вы применяете обновленный раздел конфигурации к контейнеру.Примерно так:

section.Namespaces.Add(new NamespaceElement() { Name = "my.standard.namespace" });
container.LoadConfiguration(section);

На самом деле я не пробовал это :-), но это должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...