我正在使用带有XML配置的Unity2。它具有在XML配置中指定为其执行自动类型查找的命名空间和程序集的灵活功能,因此您不必总是指定全名或创建别名。
是否有可能以编程方式为自动类型查找指定程序集和命名空间,而不在XML配置中显式列出它们?我的目标是为我的应用程序管理员简化XML配置。来自两个或三个命名空间的类型几乎总是在容器注册中使用,所以我希望这些命名空间自动包含在查找中。
发布于 2010-12-01 04:17:34
没有任何内置的显式支持这一点。
一个选项需要在代码中执行更多的步骤。不只是调用container.LoadConfiguration(),而是显式地获取配置节:
var section = (UnityConfigurationSection)ConfigurationManager.GetSection("unity");然后,进入该部分的Namespaces或assemblies属性,并添加指向“标准”名称空间和程序集的新NamespaceElement或AssemblyElement对象。然后将更新后的配置节应用于容器。如下所示:
section.Namespaces.Add(new NamespaceElement() { Name = "my.standard.namespace" });
container.LoadConfiguration(section);我还没有真正尝试过这个,:-),但是它应该可以工作。
https://stackoverflow.com/questions/4315859
复制相似问题