私は、IsReferenceがtrueに設定されているPOCOエンティティオブジェクトを返す非常に単純なWCF 4.0サービスを持っています。私のサービスからオブジェクトを返すと、プリミティブ型(int、doubleなど)の値が正しく設定され、参照を持つものも正しくシリアル化されています。ステートメント。また、メンバーが[DataMember]で正しくマークされ、パブリックゲッター/セッターがあることも確認しました。しかし、オブジェクトが呼び出し側によって受け取られると、すべてのプリミティブ型は0に設定され、参照付きの型はNULLに設定されます。WCF IsReference = trueが値をデフォルトにリセットしています
助けていただければ幸いです!
try
{
var stream = new MemoryStream();
var dataContractSerializer = new DataContractSerializer(onlineSellItemDetail.GetType());
dataContractSerializer.WriteObject(stream, onlineSellItemDetail);
}
catch (Exception ex)
{
Console.WriteLine(ex.InnerException.ToString());
}
'DataContractSerializer'コンストラクタには、.NET FrameworkではなくSLで話している場合は循環参照を許可するフラグを持つオーバーロードがあります – Dyppl