1

콘솔 응용 프로그램에서 ASP.NET 핵심 구성 (특히 Microsoft.Extensions.Configuration.Json)을 사용하려고합니다. IConfigurationRoot.Bind()을 호출하면 어셈블리에 대해 FileNotFound 예외가 발생합니다. 내 지식 TypeConverter으로바인딩 구성 시도 중 : System.ComponentModel.TypeConverter를로드 할 수 없습니다.

시스템 조립이 아닌 가상의 System.ComponentModel.TypeConverter 어셈블리의 System.ComponentModel 네임 스페이스에 있습니다.

이것은 버그 인 것 같습니다. 또는 나는 무엇인가 놓치고 있냐?

내가 .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

잘못된 프로젝트 유형을 만들었습니다. "Console Application (.NET Core)"을 생성하고 대상을'netcoreapp1.0' ot'net452'에서 변경하고'Microsoft.NETCore.App' 패키지를 의존성에서 제거해야합니다. .NET 핵심 응용 프로그램은 package.xml이 아닌 project.json을 사용하여 파일을 복원합니다. – Tseng

답변

0

TypeConverterSystem에 있습니다. 나는 NuGet을 둘러 보았고 실제로 .NET 코어의 일부인 System.ComponentModel.TypeConverter 어셈블리를 발견했습니다. 이 패키지를 설치하면 문제가 해결되었습니다.