2017-03-11 3 views
1

を返す:.NETコアGetCurrentDirectoryのは、次のように私はプロジェクトを持っている親ディレクトリ

ProjectRootフォルダ

  • ウェブAPIプロジェクト
  • コンソールアプリケーションプロジェクト
  • 共有クラスライブラリ

Direcを使用してコンソールアプリケーションプロジェクト内のappsettings.jsonフォルダからフェッチしようとしていますtory.GetCurrentDirectory()、しかし、デバッグセッションを実行している場合、Console Appフォルダではなく、ProjectRootフォルダが返されます。

これはなぜですか?または、私のコンソールアプリケーションフォルダからappsettingsを取得する正しい方法は?

My機能次のようになります。

private static IConfigurationRoot GetConfiguration(){ 
     return new ConfigurationBuilder() 
     .SetBasePath(Directory.GetCurrentDirectory()) 
     .AddJsonFile("appsettings.json", optional: false) 
     .Build(); 
    } 

// EDIT:

質問2)また、注目する価値がある、私のWeb APIプロジェクトは、依存性注入を経てIHostingEnvironment変数を取得し、私ができる午前env.ContentRootPathを正常に使用する(親フォルダではなくWeb APIフォルダへのパスを返す)。私のコンソールアプリケーションでContentRootPathを使用するにはどうすればいいですか?

答えて

2

これで問題を解決しました。ルートフォルダに生成された

私launch.jsonファイル/ .VSCODE

は私が${workspaceRoot}/ChildFolder

${workspaceRoot} 

から "CWD" プロパティを変更するために必要な

関連する問題