这是我正在尝试做的事情:
我有订单、订单项和供应商。每个 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 运算符之类的东西。
有任何想法吗?