我正在尝试在控制台应用程序中使用ASP.NET Core配置(特别是Microsoft.Extensions.Configuration.Json)。当我致电IConfigurationRoot.Bind()
时,它会为程序集FileNotFound
抛出System.ComponentModel.TypeConverter
个例外。
据我所知,TypeConverter
位于系统程序集中的System.ComponentModel
名称空间中,而不是虚构的System.ComponentModel.TypeConverter
程序集。
这似乎是一个错误。或者我错过了什么?
我定位.NET 4.5.2,引用了System
,并安装了以下NuGet包:
<package id="Microsoft.Extensions.Configuration" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.Configuration.Abstractions" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.Configuration.Binder" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.Configuration.FileExtensions" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.Configuration.Json" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.FileProviders.Abstractions" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.FileProviders.Physical" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.FileSystemGlobbing" version="1.0.0" targetFramework="net452" />
<package id="Microsoft.Extensions.Primitives" version="1.0.0" targetFramework="net452" />
是否有解决方法或其他步骤?
这也不起作用:
ConfigurationBinder.Bind(config, myconfig);
我的JSON是代表字符串属性还是结构如TimeSpan
似乎无关紧要。
答案 0 :(得分:0)
我已经习惯TypeConverter
在System
。我在NuGet周围发现并发现确实有一个程序集System.ComponentModel.TypeConverter
作为.NET Core的一部分。安装该软件包解决了我的问题。