そのため、既存のクラスの一部を廃止しようとし、ObsoleteAttributeを使用してそれらのクラスを廃止とマークし始め、使用を停止します。 Obsolete属性でマークされたタイプでKnownType属性を使用し、コンパイラ警告を引き起こしているという事実が予想されます。ただし、このプロジェクトでは、警告をエラーとして扱うため、警告を無視することはできません。この警告を抑制するコンパイラ指令はありますか?
次の使用法では、コンパイラの警告が発生します。
///ProductTemplateDataSet is marked with the Obsolete attribute
[KnownType(typeof(ProductTemplateDataSet))]
public class EntityCollectionBase : System.Data.DataSet
{
}
編集:コンパイラ指令を使用してエラーを無視することは理解していますが、このコンパイラ警告には数字がありません。
コードを#prgrama
sでペッパー化することを避けたい場合は、これを試してください:
csprojファイルで、適切なPropertyGroup
要素を見つけて追加します
<WarningsNotAsErrors>612,618</WarningsNotAsErrors>
私のプロジェクトファイルの1つからの抜粋です。
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>TRACE;DEBUG</DefineConstants>
<ErrorReport>Prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<WarningsNotAsErrors>612,618</WarningsNotAsErrors>
<NoWarn>
</NoWarn>
<WarningsAsErrors>
</WarningsAsErrors>
</PropertyGroup>
これをVS2010、VS2012、およびVS2013プロジェクトで正常に使用しました。