我必须从数据库接收特定于用户的工单。
所有用户的筛选器都不同,因此一个人必须处理所有运往英国的订单,然后所有运往其他 5 个国家的订单,一个人处理所有高值(value)的东西,一个人处理包含 > 10 件商品的所有订单等。
所以,我想到了这个想法(如果你有更好的想法,那就试试吧!)
我为每个用户创建一个 View ,所有 View 返回相同的数据,但过滤器不同。
在 ado.net 中我会做这样的事情:
string sql = "select * from vwWorkOrders" + userName;
[rest of the ado.net here]
但现在我正在使用 ef4,我想知道这种代码的等价物是什么。
最佳答案
您可以使用 ExecuteStoreQuery method就像下面的例子:
context.ExecuteStoreQuery<vwWorkOrder>(sql);
此方法允许您执行存储SQL并获得强类型结果。
如果您需要传递一些参数,只需在调用 ExecuteStoreQuery 时传递必要的 ObjectParameter 实例即可。
关于c# - 使用 Entity Framework 4 执行自定义 sql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4185248/