"旧"の世界では、Windowsエクスプローラのファイルpropetiesに "製品名"と "法的商標"として表示されるAssemblyProductAttribute
とAssemblyTrademarkAttribute
を定義します。新しいcsprojビルドシステムを使用してcsprojでAssemblyProductを定義する方法
Visual Studio 2017でnetstandardプロジェクトで使用される新しい簡略化されたmsbuildシステムでは、これらのアセンブリレベルのすべての属性in the csproj directlyを定義し、msbuildに実際の属性を生成させることをお勧めします。
しかし、csprojには「製品名」と「法的商標」を定義する方法がないようです。それとも? This msbuild targetは、AssemblyProductAttribute
のために作業が必要であると思われるようです。
どのように2つのものを追加できますか?
Udapte:右csprojファイルに<Product>Foo</Product>
を書き込むことができますでAssemblyProductAttributeため オクラホマので。しかし、AssemblyTrademarkAttribute
はどうですか?あなたがアセンブリのための項目を追加することができます
IDEにプロパティページを追加しただけでは、それが優先されるわけではありません。特に私が想像している古いプロジェクトを移植するプログラマにとっては、そうではありません。コード内の属性を持つ古いスタイルを使用すると、[assembly:AssemblyTrademark( "foobar")]をどこにでも配置できます。 –
コードで属性を定義し、そのプロパティページを使用すると、重複した属性のコンパイルエラーが発生するため、この方法が推奨されています。以前のバージョンのVSでは、これはコード内の属性(AssemblyInfo.cs)を変更しましたが、もはや変更されませんでした。 – bitbonk
新しいcsファイルを作成してアセンブリ属性を置くことができますので、実際には関係ありません。プロパティを使用し、インポートされた単一のmsbuildファイルを定義してすべてのプロジェクトなどの値を設定できるので(たとえ混合f#+ c#ソリューションを通過する場合でも)、msbuild-integratedバージョンはより優れています。 –