Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2005 CLR存储过程:SqlContext.Pipe.SendResultsStart/SendResultsRow/SendResultsEnd的替代方案?_Sql Server 2005_Stored Procedures_Clr - Fatal编程技术网

Sql server 2005 CLR存储过程:SqlContext.Pipe.SendResultsStart/SendResultsRow/SendResultsEnd的替代方案?

Sql server 2005 CLR存储过程:SqlContext.Pipe.SendResultsStart/SendResultsRow/SendResultsEnd的替代方案?,sql-server-2005,stored-procedures,clr,Sql Server 2005,Stored Procedures,Clr,关于同一主题的前一个相关问题。 在CLR存储过程中,我构建了一组对象,这些对象表示经过复杂筛选后的数据集。 然后,使用SqlContext.Pipe.SendResultsStart/SendResultsRow/SendResultsEnd循环在结果集中“转换”此集合并传递 尽管这是它应该工作的,但由于循环等原因,它感觉不是最优的。 有没有更好的替代方案,比如说,动态地将集合转换为SQL结果集 提前感谢。更好的选择是将集合组织到xml文档中(您可以通过.NET库轻松完成),然后可以使用sql节

关于同一主题的前一个相关问题。 在CLR存储过程中,我构建了一组对象,这些对象表示经过复杂筛选后的数据集。 然后,使用SqlContext.Pipe.SendResultsStart/SendResultsRow/SendResultsEnd循环在结果集中“转换”此集合并传递

尽管这是它应该工作的,但由于循环等原因,它感觉不是最优的。 有没有更好的替代方案,比如说,动态地将集合转换为SQL结果集


提前感谢。

更好的选择是将集合组织到xml文档中(您可以通过.NET库轻松完成),然后可以使用sql节点xml方法解析xml文档以返回结果集。可以使用LINQ库将集合转换为XML。设计的层次将根据上下文而变化。但是我发现这种方法非常有效。

没有人?我希望在几天后找到一些答案,但看起来我没有那么幸运:-(有人在吗?:)我仍然在使用这种方法,它工作得很好,所以某种程度上还行。但是我觉得这不是一个干净的解决方案,我期待着听到其他的想法