2015-10-16 8 views

答えて

14

source code of ConfigurationBuilderを見ると、コンストラクタがアプリケーションのベースパスを表す文字列を受け入れないことがわかります。代わりに、我々はそれを指定するIConfigurationBuilderインターフェイス上でSetBasePath() extension methodを使用する必要があります。

public Startup(IApplicationEnvironment appEnv) 
{ 
    var configurationBuilder = new ConfigurationBuilder() 
     .SetBasePath(appEnv.ApplicationBasePath) 
     .AddJsonFile("config.json") 
     .AddEnvironmentVariables(); 

    Configuration = configurationBuilder.Build(); 
} 

特定のコミットhereを見つけることができます。

+0

申し訳ありませんが、質問が遅れている場合はどうすればIApplicationEnvironmentを追加しますか?私は今何時間も探していて、それを稼働させることはできません。私はC#でかなり新しいです。私がIApplicationEnvironmentを注入したいのであれば、見つけられないと言いますか? – Anokrize

+0

私はチュートリアルに従っています。彼は "Microsoft.Framework.Configuration"を使用しています。これをプロジェクトに組み込むと、 ".AddEnviromentVariables()"メソッドを適用できません。これを行うには、 "Microsoft.Extension.Configurationを使用する"が必要です。しかし、これで私はIApplicationEnviromentを使用できないのですか? – Anokrize

+0

@Anokrizeはどのバージョンを使用していますか? RC1またはRC2? 'IApplicationEnvironment'クラスは' Microsoft.Extensions.PlatformAbstractions'名前空間に存在します。 –

関連する問題