2012-01-16 37 views

Trả lời

1

Tôi nghĩ rằng không có gì xấu xảy ra. Nếu biểu đồ của bạn chứa nhiều liên kết đến cùng một cá thể đối tượng, hãy đặt thuộc tính này thành true sẽ giảm kích thước XML.

http://zamd.net/2008/05/20/datacontract-serializer-and-isreference-property/

Tuy nhiên, tôi không chắc chắn tại sao tính năng này không được bật theo mặc định.

10

Có ít nhất hai lý do để tránh sử dụng IsReference:

Đầu tiên có một hình phạt hiệu quả vì tất cả các serializer phải thực hiện một kiểm tra danh tính cho từng đối tượng mà là để được đăng.

Thứ hai, DataContractJsonSerializer không thể tuần tự hóa các đối tượng được đánh dấu bằng thuộc tính IsReference. Vì vậy, nếu bạn cần hỗ trợ cả Xml và Json thì bạn không thể sử dụng nó.

Ngoài những thứ đó, tôi không thấy bất kỳ lý do gì để không sử dụng nó. Sau khi tất cả nó tiết kiệm một số băng thông quý giá!

+5

Mặc dù JSON.Net có thể xử lý IsReference = true. http://dotnet.learningtree.com/2012/04/03/working-with-the-entity-framework-and-the-web-api/ –

Các vấn đề liên quan