题
我在对不同类型的ORM工具和DAL发电机今天的审查。其中之一是NetTiers。
我有客户,订单的OrderDetail等经典DB模型..
我想执行这些表复杂内连接。这是原单SQL查询:
SELECT [Contact].LastName, SUM(OrderRow.Amount * Product.Price) TotalAmount
FROM Contact
INNER JOIN [Order] ON [Contact].ContactId=[Order].ContactId
INNER JOIN [OrderRow] ON [Order].OrderId=[OrderRow].OrderId
INNER JOIN [Product]ON OrderRow.ProductId=Product.ProductId
GROUP BY [OrderRow].OrderId, [Contact].LastName
HAVING SUM(OrderRow.Amount * Product.Price) > 100
我无法找到一种方式来获得在这个代码完成与NetTiers。你能吗?
(PS:使用VS2008 SP1和SQLServer2008的SP1)
解决方案
您不能没有自定义存储过程做到这一点。这里的解决方案: http://benpowell.org/寻呼和分拣中A-nettiers-定制存储过程/
其他提示
为什么不创建一个自定义存储过程,nettiers生成用于TableProvider类下的存储过程的具体方法,事后你可以简单地调用你的收作方法初探。该方法的返回类型可能会在这种情况下,一个DataSet(不知道!)。请参阅这里
不隶属于 StackOverflow