如何序列化“Type”?
我想将一个具有对象类型属性的对象序列化为XML。这样,当反序列化时,我可以创建该类型的对象。
public class NewObject
{
}
[XmlRoot]
public class XmlData
{
private Type t;
public Type T
{
get { return t; }
set { t = value; }
}
}
static void Main(string[] args)
{
XmlData data = new XmlData();
data.T = typeof(NewObject);
try
{
XmlSerializer serializer = new XmlSerializer(typeof(XmlData));
try
{
using (FileStream fs = new FileStream("test.xml", FileMode.Create))
{
serializer.Serialize(fs, data);
}
}
catch (Exception ex)
{
}
}
catch (Exception ex)
{
}
}
我遇到了这个异常: "未预期类型ConsoleApplication1.NewObject。使用XmlInclude或SoapInclude属性指定静态未知的类型。"
我该在哪里放置[XmlInclude]呢?这可行吗?
tName
属性上添加一个[XmlElement(ElementName = "T")]
属性。 - derkyjadex