2011-07-27 11 views
1

私はserialzedされたクラス内のフィールドがあります。私が理解からシリアル化可能なパブリックフィールドにブレークポイントを追加する方法は?

[OptionalField(VersionAdded = 2)] 
public bool IsUser; 

を、両方のプライベートフィールドやプロパティが正しくシリアライズされていませんか?

ページ要求全体を通してIsUserプロパティがどのように変更されているかを確認するには、ブレークポイントを設定する必要があります。

答えて

2

最初の仮定は一般的に正しくありません。しかし、それはシリアライザに依存します。 Serializable Attributeでマークされた何かのために、このべきホールド:SerializableAttributeによってマークされているタイプで

すべてのパブリックとプライベートフィールドは、デフォルトで直列化される

ブレークポイントを追加するには、値をラップするセッター/ゲッターを作成し、セッター内の割り当てにブレークポイントを追加します。

ハッピーコーディング。

+0

私はprivate変数にシリアル化可能とマークするのですか? – codecompleting

+0

@codecompleting Serializable属性は、型(クラス)に適用されます。フィールドをシリアライズしないようにするには、フィールドにNonSearialized Attributeを注釈する必要があります。 –

関連する問題