C# 将Linq查询结果输出为XML
在SQL Server Management studio中,我可以执行以下操作:C# 将Linq查询结果输出为XML,c#,sql,linq,C#,Sql,Linq,在SQL Server Management studio中,我可以执行以下操作: SELECT * FROM tableName FOR XML RAW 为我的表中的数据生成XML项列表 在C#中如何使用LINQ查询 var itemCollection = from entry in dataContextTableName select entry for xml raw 无法工作(无法编译)。有什么想法吗?您可以编写一个存储过程,将XML作为输出参数返回,并通过LinqToSql数据
SELECT * FROM tableName FOR XML RAW
为我的表中的数据生成XML项列表
在C#中如何使用LINQ查询
var itemCollection = from entry in dataContextTableName select entry for xml raw
无法工作(无法编译)。有什么想法吗?您可以编写一个存储过程,将XML作为
输出
参数返回,并通过LinqToSql数据上下文访问它
例如:
CREATE PROCEDURE dbo.GenerateXML
(
@xmlOutput nvarchar(MAX) OUTPUT
)
AS
BEGIN
SET @xmlOutput = (
SELECT * FROM tableName FOR XML RAW
)
END
从这里,您必须使用服务器资源管理器将存储过程拖放到DBML文件上,然后在代码中,它只是:
string xml = "";
dataContext.GenerateXML(ref xml)
正如James所说,不能使用原始LinqToSql语法;或者,您可以将从标准Linq查询(例如:
从dataContextTableName中的条目选择条目
)得到的结果序列化为代码中的XML,请参见。我认为您不能使用Linq,不是SQL中所有可能的都可以在Linq中实现,您要么运行SQLCommand,要么自己将结果数据集序列化为xml