我有以下存储过程
ALTER PROCEDURE [dbo].Test
AS
BEGIN
CREATE TABLE ##table
(
ID1 int,
ID2 int
)
DECLARE @query varchar(MAX);
INSERT INTO ##table VALUES(1, 1);
SELECT * FROM ##table;
END
我尝试在 C# 代码中使用它。我使用 LINQ to SQL 作为 O/RM。当我将过程添加到 DataBaseContext 时,它说它无法计算出该过程的返回值。如何修改存储过程以便我可以将它与 LINQ to SQL 一起使用。
注意:我需要有全局模板表!
最佳答案
对于 MSSQL,在过程开始时使用 SET FMTONLY OFF;
。告诉 SQL 运行存储过程而不做假设,这是我学会在使用临时表时使 LINQ 工作的唯一方法。
关于c# - 存储过程的 LINQ to SQL 自动生成类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2997563/