您的位置:首页 > 编程语言 > PHP开发

Linq to Entities调用存储过程取不到OUTPUT变量值

2012-01-07 18:20 281 查看
问题描述:

存储过程部分:

ALTER PROCEDURE dbo.P_PurchaseSearch (@fromdate DATETIME, @todate DATETIME, @notpay INT, @id INT, @custormer INT, @istax INT, @spec INT, @company INT, @itemCount INT =0 OUTPUT, @pageIndex INT =1 OUTPUT, @pageSize INT =20 OUTPUT, @runTime INT =0 OUTPUT ) AS ...

在.edmx模型中导入存储过程,如果有返回结果集,则建立一个复杂类型。

在.cs文件中中调用时:

ObjectParameter itemCount = new ObjectParameter("itemCount", 10);
ObjectParameter pageIndex = new ObjectParameter("pageIndex", 1);
ObjectParameter pageSize = new ObjectParameter("pageSize", 20);
ObjectParameter runTime = new ObjectParameter("runTime", 10);
var _result = dhhs.P_PurchaseSearch(fromdate, todate, notpay ?1 : 0, id, customer, istax, spec, company, itemCount, pageIndex, pageSize, runTime).ToList();

调用后发现无法返回OUTPUT值,即传入值不发生改变,调试后发现存储过程无误,然后检查后台代码,发现之前是在页面类controller处初始化:

dhhsdbEntities dhhs =newdhhsdbEntities();

修正问题:

在每次action调用前进行实例化就可以了ORZ,感觉跟之前使用的静态方法使不同的用户串话的bug如出一辙。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐