csproj
複数のファイルからプロジェクトのプロパティ/参照 (および参照のプロパティ) を読み取り、それらの値を変更するアプリケーション (C#) を開発しています。
ただし、「copy-local」(参照をクリックしたときにプロパティ エクスプローラーに表示されるプロパティ) などの参照プロパティは、これらのcsproj
ファイルでは見つかりません。それらにアクセスして、プログラムで値を変更する方法はありますか?
csproj
複数のファイルからプロジェクトのプロパティ/参照 (および参照のプロパティ) を読み取り、それらの値を変更するアプリケーション (C#) を開発しています。
ただし、「copy-local」(参照をクリックしたときにプロパティ エクスプローラーに表示されるプロパティ) などの参照プロパティは、これらのcsproj
ファイルでは見つかりません。それらにアクセスして、プログラムで値を変更する方法はありますか?
すべてがXMLプロジェクトファイルに含まれています。この情報が存在する可能性のある場所は他にありません。どこかにある必要がありますね。
これが私があなたのために素早く行った例です。フレームワークアセンブリのデフォルトですCopy Local
。true
に設定Copy Local
するとfalse
、その参照用にincludedという名前のXML要素が取得され、private
それ自体がfalseに設定されます。
この例System.Core
では、set Copy Local
= false
。
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
<Private>True</Private>
</Reference>
<Reference Include="System.Web" />