尝试绑定配置:无法加载System.ComponentModel.TypeConverter

时间:2016-08-04 17:07:34

标签: asp.net configuration asp.net-core strong-typing assembly-loading

我正在尝试在控制台应用程序中使用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似乎无关紧要。

1 个答案:

答案 0 :(得分:0)

我已经习惯TypeConverterSystem。我在NuGet周围发现并发现确实有一个程序集System.ComponentModel.TypeConverter作为.NET Core的一部分。安装该软件包解决了我的问题。