1

这是我正在尝试做的事情:

我有订单、订单项和供应商。每个 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 运算符之类的东西。

有任何想法吗?

4

1 回答 1

0

好吧,事实证明 Lightswitch 不允许您跨不同的数据集进行查询。在这种情况下,我有一些用于 Order 和 Order Items 的本地表,以及来自我们数据仓库的供应商表。我为供应商创建了一个本地表,从数据仓库导入数据,现在一切都按预期工作。

于 2012-09-12T00:30:26.983 回答