我一直在LINQ数据库中使用XML,发现使用序列化程序非常困难
数据库LINQ需要一个存储XElement的字段
我有一个具有许多自定义结构类的复杂对象,因此我想使用XmlSerializer来序列化该对象
但是,序列化程序只能序列化为文件(“C:\xxx\xxx.xml”)或内存流
但是,是否要将其转换或序列化为XElement,以便使用LINQ存储在数据库中
如何做相反的事情?i、 e.反序列化XElement
试着用这个
使用(var stream=new MemoryStream())
{
serializer.Serialize(流、值);
流位置=0;
使用(XmlReader=XmlReader.Create(stream))
{
XElement元素=XElement.Load(读卡器);
}
}
反序列化:
XmlSerializer xs=新的XmlSerializer(typeof(XElement));
使用(MemoryStream ms=new MemoryStream())
{
序列化(ms,xml);
ms.Position=0;
xs=新的XmlSerializer(typeof(YourType));
object obj=xs.反序列化(ms);
}