C# 在LINQ中使用存储过程

C# 在LINQ中使用存储过程,c#,linq,stored-procedures,sp-executesql,C#,Linq,Stored Procedures,Sp Executesql,我想使用LINQ调用中的存储过程,但我想调用的存储过程包含由执行的SQL字符串 EXEC sp_executesql @strSQL 这样,VisualStudio就不会生成结果类。为了解决这个问题,我通过 INSERT INTO @Temp EXEC sp_executesql @strSQL SELECT * from @Temp 也许这不是最好的方法,但它是有效的。问题是它有时返回的项目顺序错误。如何修复它?使用指定排序顺序为什么要使用sp_executesql?这个问题让我感到害怕。

我想使用LINQ调用中的存储过程,但我想调用的存储过程包含由执行的SQL字符串

EXEC sp_executesql @strSQL
这样,VisualStudio就不会生成结果类。为了解决这个问题,我通过

INSERT INTO @Temp EXEC sp_executesql @strSQL
SELECT * from @Temp

也许这不是最好的方法,但它是有效的。问题是它有时返回的项目顺序错误。如何修复它?

使用指定排序顺序

为什么要使用sp_executesql?这个问题让我感到害怕。如果只在本地应用程序中使用,这并不是世界末日setting@BasB我不知道原因。这是一个有点复杂的问题(不是我写的)谢谢。我只是将Order By line从SQL字符串移动到final SELECT,它成功了。