Đây là một trong những tôi đấu tranh với lứa tuổi vì vậy nghĩ rằng tôi muốn tài liệu ở đâu đó. (Xin lỗi để hỏi và trả lời một câu hỏi.)Tại sao tài sản công cộng của tôi không được XmlSerializer tuần tự hóa?
(C# .net 2.0) Tôi đã có một lớp đã được xê-ri hóa bởi XmlSerializer, tôi đã thêm một thuộc tính công khai mới tuy nhiên nó không được đưa vào XML đầu ra.
Nó không được đề cập trong tài liệu ở bất cứ nơi nào tôi có thể tìm thấy, nhưng các thuộc tính công khai phải có một bộ cũng như được sắp xếp theo thứ tự! Tôi đoán điều này là bởi vì nó giả định rằng nếu bạn đang đi để serialize sau đó bạn sẽ muốn deserialize từ cùng một tập tin, do đó, chỉ serializes tài sản có cả một tập hợp và nhận được một.
Mặc dù tôi có một số thuộc tính chỉ với mục đích. Chúng cũng được đánh dấu bằng các thuộc tính XmlArray và XmlArrayItem, vì vậy tôi đoán đó là lý do tại sao chúng thoát ra ngoài với một tập hợp. – Rory
Trong một số trường hợp, thuộc tính trả về bộ sưu tập không cần bộ, nhưng nó phải được khởi tạo trong hàm tạo ... Đây là trường hợp cho các bộ sưu tập không có hàm tạo công khai. Nhưng hành vi này có vẻ hơi không phù hợp với tôi ... –
Tôi chưa bao giờ để ý điều đó, cảm ơn Thomas; Tôi sẽ điều tra ;-p –