メトリックトンのタイプを使用して私のアセンブリに対してsgen
を実行します。私はシリアライゼーションから2つのタイプを除外したい。私はそれを行う方法を見つけることができないようです。特定の型をシリアル化から除外する方法は?
sgen
には、特定のタイプを指定するには/type
スイッチがありますが、特定のタイプを除外するものはありません。
特定の型をシリアル化から除外する方法はありますか?
メトリックトンのタイプを使用して私のアセンブリに対してsgen
を実行します。私はシリアライゼーションから2つのタイプを除外したい。私はそれを行う方法を見つけることができないようです。特定の型をシリアル化から除外する方法は?
sgen
には、特定のタイプを指定するには/type
スイッチがありますが、特定のタイプを除外するものはありません。
特定の型をシリアル化から除外する方法はありますか?
これを探していても、クラス定義の前に[NonSerialized]と記述することで、独自のクラスをシリアライズから除外できますかどうかはわかりません。 あなたは、あなたがそれを継承して、別のアセンブリで、除外するタイプを入れてから独自のクラス
別に[NonSerialized]
public class Point
{
public int x, y;
}
'NonSerialized'属性の唯一のターゲットはフィールドなので、このコードはコンパイルすべきではありません。 – tm1
エラー属性 'NonSerialized'は、この宣言型では無効です。 'field'宣言でのみ有効です。 –
を作成する必要があります特定の型を除外したいのであれば、あなたはシリアライザからタイプを除外することはできません世代。
クラスをinternal
とマークしてXmlシリアル化から除外するクラスのアクセス権を変更すると、sgen.exeはそのクラスをスキップする必要があります。
internal class NotToBeSerialized
{
...
}
おそらく私はあなたの質問を理解できませんでしたが、 'sgen'はシリアライゼーションアセンブリのみを生成します。そこに別の2つのクラスを持つことの問題は何ですか? –