tôi có nhu cầu deserialization rất cụ thể, xem ví dụ dưới đây:Lớp .NET XmlSerializer có thể deserialize InnerXml thành chuỗi không?
nói rằng tôi có lớp học sau đây:
[Serializable]
public class Person {
public string Name { get; set; }
public string PersonXml { get; set; }
}
và sau XML
<Person> <Name>John</Name> <PersonXml><someXmlFragment>text</someXmlFragment></PersonXml> </Person>
Những gì tôi muốn là lớp XmlSerializer để deserialize InnerXml của < phần tử PersonXml > vào thuộc tính PersonXml dưới dạng một chuỗi. Tôi tự hỏi nếu nó có thể được thực hiện.
LƯU Ý: Tôi biết tôi có thể mã hóa các nội dung của <PersonXml> thoát chars XML bất hợp pháp, nhưng tôi muốn rời khỏi XML bên trong con người thân thiện hơn (không chứa & lt; và các tổ chức khác mà sẽ chỉ cofuse cuối của tôi người dùng)
Đúng vậy, tôi đã không xem xét con đường như vậy. Điều này chắc chắn sẽ giải quyết vấn đề của tôi, mặc dù tôi đã hy vọng cho một số giải pháp rẻ hơn :) Cảm ơn! –
BTW, bạn không cần [Serializable] để tuần tự hóa XML. [XmlElemenht ("Name")] cũng có thể được bỏ qua, vì trong trường hợp này nó không thay đổi hành vi mặc định của XMLSerializer. –