2009-05-25 66 views
2

我在对不同类型的ORM工具和DAL发电机今天的审查。其中之一是NetTiers。内加入与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)

回答

0

为什么不创建一个自定义存储过程,nettiers生成用于TableProvider类下的存储过程的具体方法,事后你可以简单地调用你的收作方法初探。在这种情况下,方法返回类型可能是一个DataSet(不确定!)。见here

+0

我知道,但是这将解决该项目到一个特定的供应商。 NHibernate或LLBLGenPro使用它自己的对象查询语言来做到这一点,并且它是数据库不可知的 – 2009-05-25 12:51:01