我正在尝试使用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包吗?
答案 0 :(得分:0)
感谢gunr2171将How to read web.config file in .Net Core app发布到另一个问题。
该问题的评论解决了该问题:
只需将web.config重命名为app.config即可使用。