有没有办法在不往返 XmlDocument/temp 字符串的情况下对对象进行反序列化/序列化?我正在寻找类似以下的内容:
class Program
{
static void Main(string[] args)
{
XDocument doc = new XDocument();
MyClass c = new MyClass();
c.SomeValue = "bar";
doc.Add(c);
Console.Write(doc.ToString());
Console.ReadLine();
}
}
[XmlRoot(ElementName="test")]
public class MyClass
{
[XmlElement(ElementName = "someValue")]
public string SomeValue { get; set; }
}
但是,当我这样做时出现错误(不能将非空白字符添加到内容中。)如果我将类包装在元素中,我会看到写入的内容是 <element>ConsoleApplication17.MyClass</element> - 所以错误说得通。
我确实有自动反序列化/序列化的扩展方法,但这不是我想要的(这是客户端,但我仍然想要更优化的东西)。
有任何想法吗?