我知道这个问题是旧的,但我想显示我的解决方案,以解决这个问题。
public static string CreateXml<T>(IQueryable<T> thisQueryable)
{
var thisList = thisQueryable.ToList();
var xmlResult = "";
using (var stringWriter = new StringWriter())
{
using (var xmlWriter = new XmlTextWriter(stringWriter))
{
var serializer = new XmlSerializer(typeof(List<T>));
serializer.Serialize(xmlWriter, thisList);
}
xmlResult = stringWriter.ToString();
}
return xmlResult;
}
基本上这只是需要您的IQueryable<T>
并序列化为XML
并返回XML
为string
。
然后,你基本上采取串并....
var xmlDoc = new XmlDocument();
xmlDoc.Load(xmlResult);
希望这有助于为今后的任何游客。
谢谢!但是,这是使用LINQtoXML创建XML,我将如何将IQUERYABLE(来自LINQ2ENTITIES)中的数据(已经存在于SQL Server中)转换为XML。 – Martin 2010-11-07 08:27:01
@Martin,你只需要从'IQueryable'投影数据。我试图在我编辑的答案中反映出这一点。 – 2010-11-07 08:36:08
谢谢!正是我需要的 – Martin 2010-11-22 13:16:32