DataContract
のIsReference
プロパティの目的は何ですか?このプロパティが適用されると、リクエストとレスポンスはどのように変化しますか?データ契約のIsReferenceプロパティ
44
A
答えて
57
オブジェクトのシリアル化方法を指定します。デフォルトはIsReference=false
です。
設定すると、IsReference = true
は、互いを参照できるオブジェクトのツリーのシリアル化を可能にします。
IsReference=false
が生じるであろう:それぞれが(もEmployee
ある)Manager
のプロパティ、各Employee
ためManager
への参照を有するEmployees
のリストを有するように、各Employee
ノード内Manager
を埋め込むのではなく、保持することができます。
IsReference=true
が生じるであろうと
<Employee>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Employee>
<Employee>
<Manager>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Manager>
<Name>Bob</Name>
</Employee>
<Employee>
<Manager>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Manager>
<Name>Alice</Name>
</Employee>
:
<Employee z:Id=“i1“ xmlns:z=“http://schemas.microsoft.com/2003/10/Serialization/“>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Employee>
<Employee z:Id=“i2“ xmlns:z=“http://schemas.microsoft.com/2003/10/Serialization/“>
<Manager z:Ref=“i1“ />
<Name>Bob</Name>
</Employee>
<Employee z:Id=“i3“ xmlns:z=“http://schemas.microsoft.com/2003/10/Serialization/“>
<Manager z:Ref=“i1“ />
<Name>Alice</Name>
</Employee>
weblogから取得したスニペットで、完全な説明と、プロパティが適用された生成されたXMLの例があります。
MSDN - IsReference Propertyは、詳細とInteroperable Object Referencesを提供します。
2
IsReference
は、.NET Framework 3.5には存在しません。そのFrameworkバージョンで使用するとエラーが発生する可能性があります。これは、4.5,4,5.5 SP1、およびSilverlightのみに存在します。
webblogリンクの
関連する問題
- 1. データ契約としてのSTE?
- 2. サービス契約図
- 3. コード契約エラー
- 4. コード契約ビルドパフォーマンス
- 5. iPhoneデベロッパプログラムの契約
- 6. コード契約のベストプラクティス
- 7. ペックスとコード契約
- 8. エルム - 擬似契約を考えると契約
- 9. C#3.0の契約書で
- 10. WCFモバイル契約の戦略
- 11. 実行時のコード契約
- 12. サービス契約にデータ契約が表示されない...どうすれば追加できますか?
- 13. WCF契約継承コントラクト
- 14. コード契約と非同期
- 15. CRM 2011アンエンティティレコード(契約Renewel)
- 16. ジェネリックヘルパーによるコード契約
- 17. ダイナミックWCFサービス契約は
- 18. データ契約に問題がありますか?
- 19. Silverlight 4 - DataGridのComboBoxをWCFのクライアント契約クラスのプロパティにバインドする
- 20. Eclipseプラグインへのライセンス契約の追加
- 21. WCF WSDLでのインタフェース契約の定義
- 22. DotNetOpenAuthの別のサービス契約を使用
- 23. 同じ契約の2つのバインディング
- 24. Biztalk 2010でのパーティーと契約作成?
- 25. Debug.Assertとコード契約の使用
- 26. XNAプログラムの使用許諾契約書
- 27. 複数のサービス契約を持つシングルエンドポイント
- 28. Objective-Cの契約による設計?
- 29. C#契約の実装と例外
- 30. 商用(SaaS)ソフトウェアのコミュニティライセンス契約?
+1 "エラー297 'System.Runtime.Serialization.DataContractAttributeは' 'IsReference' の定義が含まれていません"。それはたくさんの助けになりました。 – Darcy