VS Ultimate 2015 Preview를 사용하여 ASP.NET 5 WebAPI 프로젝트를 개발 중입니다. 이 방식으로 앱을 구성하려고합니다 (줄 번호는 가이드 일뿐입니다).
1 using Microsoft.Framework.ConfigurationModel;
2
3 public IConfiguration Configuration { get; private set; }
4
5 public Startup()
6 {
7 Configuration = new Configuration()
8 .AddJsonFile("config.json")
9 .AddEnvironmentVariables();
10 }
8 행에 오류가 발생합니다. ‘구성’에 ‘AddJsonFile’에 대한 정의가 없습니다 …
뭐가 잘못 되었 니?
답변
메서드 Microsoft.Extensions.Configuration.Json
를 호출하려면 NuGet 패키지 를 포함해야합니다 .AddJsonFile()
.
참조 : https://github.com/aspnet/Configuration/tree/dev/src/Microsoft.Framework.ConfigurationModel.Json
자세한 내용은 ASP.NET vNext Moving Parts : IConfiguration 입니다.
답변
나는 이것이 약간 오래되었다는 것을 알고 있지만 첫 번째 Asp.net 코어 1.0 빈 프로젝트를 빌드하려고 할 때 방금이 문제가 발생했습니다. AddJsonFile
메서드 를 사용하려면 NugetMicrosoft.Extensions.Configuration.Json
을 통해 프로젝트에 대한 참조를 추가해야합니다 .
참조를 설치하려면 패키지 관리자 콘솔에서 아래 명령을 실행하십시오.
PM> Install-Package Microsoft.Extensions.Configuration.Json
답변
다른 사람이이 문제를 겪고있는 경우 Microsoft는 2015 년 8 월 16 일 프레임 워크의이 부분을 크게 변경 했습니다. 올바른 버전의 종속성을 가져와 새로운 구성 구축 방법으로 전환해야합니다.
내 구성에는 다음이 포함됩니다.
{
"webroot": "wwwroot",
"version": "1.0.0-*",
"dependencies": {
"Microsoft.Framework.Runtime": "1.0.0-*",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta7",
"Microsoft.AspNet.Diagnostics": "1.0.0-beta7",
"Microsoft.AspNet.Mvc": "6.0.0-beta7",
"Microsoft.Framework.Configuration": "1.0.0-beta7",
"Microsoft.Framework.Configuration.Json": "1.0.0-*"
},
...
}
이 질문 에서 영감을 얻은이 코드 는 다음과 같은 도움 이 될 수 있습니다.
using System;
using Microsoft.AspNet.Builder;
using Microsoft.Framework.DependencyInjection;
using Messenger.Services;
using Microsoft.Framework.Configuration;
using Microsoft.Dnx.Runtime;
using Microsoft.AspNet.Hosting;
namespace Messenger
{
public class Startup
{
public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv)
{
var configurationBuilder = new ConfigurationBuilder(appEnv.ApplicationBasePath)
.AddJsonFile("config.json")
.AddEnvironmentVariables();
Configuration = configurationBuilder.Build();
}
public IConfiguration Configuration { get; set; }
}
...
}
도움이 되었기를 바랍니다.
답변
project.json 아래에서 종속성 내에 추가해야합니다.
dependencies {
"Microsoft.Extensions.Configuration.Json": "1.0.0"
}