繁体   English   中英

将Linq查询结果输出到XML

[英]Output Linq Query Result to XML

在SQL Server Management Studio中,我可以这样做:

SELECT * FROM tableName FOR XML RAW

为我的表中的数据生成XML条目的列表。

如何使用LINQ查询在C#中做到这一点?

var itemCollection = from entry in dataContextTableName select entry for xml raw

不起作用(不编译)。 有任何想法吗?

您可以编写一个存储过程,将XML作为OUTPUT参数返回,并通过LinqToSql DataContext访问它。

例如:

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查询(例如, from entry in dataContextTableName select entry )获得的结果序列化为代码中的XML,请参见此处以获取一个好的起点

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM