Lightswitch查询以显示订单中使用的供应商

时间:2012-09-11 16:44:22

标签: linq visual-studio-lightswitch

这是我想要做的事情:

我有Orders,OrderItems和Vendors。每个Order可以有多个OrderItem,每个OrderItem都与Vendor相关联。我有一个显示每个订单的订单商品的屏幕。在该屏幕上是供应商的下拉列表,允许您过滤订单商品列表。问题是下拉列表显示了数据库中的所有供应商(数百个),并且我一直试图让该列表仅显示与订单商品相关的供应商(通常少于十几个)。

如果我使用SQL,我会做这样的事情:

SELECT VendorID, VendorName
FROM Vendors V
JOIN OrderItems O ON V.VendorID = O.VendorID
WHERE O.OrderID = @OrderID

或者这个:

SELECT VendorID, VendorName
FROM Vendors
WHERE VendorID IN (SELECT VendorID 
                   FROM OrderItems 
                   WHERE OrderID = @OrderID)

我无法弄清楚如何在Lightswitch中执行此操作,因为它不允许在查询设计器或Linq查询中进行连接。我也无法弄清楚如何使用像IN操作符这样的东西。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

嗯,事实证明Lightswitch不允许您跨不同数据集进行查询。在这种情况下,我有一些订单和订单项的本地表,以及我们的数据仓库与供应商的表。我为供应商制作了一个本地表,从数据仓库导入数据,现在一切都按预期工作。