2017-12-01 4 views
0

それぞれの出力タイプを含むソリューション内のすべてのプロジェクトをリストする方法はありますか?ソリューション内のすべてのプロジェクトの出力タイプを一覧表示する

+0

出力タイプとは何ですか? – ViRuSTriNiTy

+0

あなたはVisual Studio内から、またはその外でそれをやろうとしていますか? –

+0

@ViRuSTriNiTy:プロジェクトプロパティ>アプリケーション>出力タイプ(コンソールアプリケーション、クラスライブラリなど) – musefan

答えて

1

インストールする外部プログラムに依存しないスタンドアロンプ​​ログラムでこれを行うプログラム的な方法があります。

RoslynおよびそのWorkspace APIの助けを借りて、ソリューションファイルを読み込んで、含まれているプロジェクトを列挙し、それぞれの出力種類を取得できます。

次NuGetパッケージが必要になります

、コードは次のようになります。

string slnFilePath = "..."; // path to SLN file 

MSBuildWorkspace workspace = MSBuildWorkspace.Create(); 
var solution = workspace.OpenSolutionAsync(slnFilePath).Result; 

foreach (var project in solution.Projects) 
{ 
    Console.WriteLine($"{project.Name} : {project.CompilationOptions.OutputKind}"); 
} 
のように定義された列挙型である

は次のとおりです。

public enum OutputKind 
{ 
    ConsoleApplication, 
    WindowsApplication, 
    DynamicallyLinkedLibrary, 
    NetModule, 
    WindowsRuntimeMetadata, 
    WindowsRuntimeApplication, 
} 
関連する問題