Có thể là DataContractSerializer
không xác định sai một đối tượng nếu các trường không nằm trong lệnh "đúng" (bất kể điều đó có nghĩa là gì) không?Serialize/deserialize objects - thứ tự các trường quan trọng?
Các lớp mà tôi cố gắng sắp xếp/deserialize không có thuộc tính thứ tự được đặt trên các trường/thuộc tính. Tuy nhiên, một trong các trường của tôi luôn được deserialized là null
mặc dù nó có giá trị không null (nó thực sự chứa một danh sách các chuỗi).
Khi tôi di chuyển hai phần tử XML trong tệp tuần tự xung quanh để khớp với thứ tự trong một ví dụ XML khác (cho việc deserialization làm việc mà không có vấn đề) mọi thứ bắt đầu hoạt động.
Điều này không có ý nghĩa với tôi nhưng có thể ai đó biết rõ hơn. ;)
Kể từ .NET 3.5 SP1, quy tắc đầu tiên và thứ hai có thể được bỏ qua. – JustAMartin
@Martin: r u chắc chắn? Ví dụ, đối với các dịch vụ web, yêu cầu serializability, chúng yêu cầu 'DataMemberAttribute' vẫn còn, ngay cả trong .NET 4.0. Bạn có liên kết đến tham chiếu không? Tôi muốn được quan tâm để đọc thêm về điều đó (và sau đó cập nhật câu trả lời của tôi). – Abel
Liên kết trong quy tắc 6 đã chết – bkribbs