【发布时间】:2018-08-22 17:08:30
【问题描述】:
我正在尝试使用 Unity.container 制作一个 aspnet 核心项目。
我的问题是加载 unity.config,所以我正在尝试让项目使用 web.config
这是我的创业公司。
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>().UseUnityServiceProvider(GetContainer());
private static IUnityContainer GetContainer()
{
var unitySection = (UnityConfigurationSection)ConfigurationManager.GetSection("unity");
Dictionary<string, IUnityContainer> containers = new Dictionary<string, IUnityContainer>();
InitiateContainers(unitySection, containers);
return containers.Values.First();
}
internal const string DefaultContainerName = "Default";
internal static void InitiateContainers(UnityConfigurationSection unitySection, IDictionary<string, IUnityContainer> containers)
{
foreach (var element in unitySection.Containers)
{
string name = string.IsNullOrEmpty(element.Name) ? DefaultContainerName : element.Name;
if (!containers.ContainsKey(name))
{
containers.Add(name, new UnityContainer());
}
unitySection.Configure(containers[name], element.Name);
}
}
但变量“unitySection”始终为空。
如何让 aspnet 核心应用加载 web.config 文件?
我需要导入另一个 nuget 包吗?
【问题讨论】:
-
我以为 Asp.net core 不使用 web.config 文件?
标签: c# asp.net-core unity-container