第一次使用LinqtoSQL。所以,給你們一些背景:LinqtoSQL從其他表獲取值
我有一個名爲庫存具有以下字段一個簡單的SQL Server表
- InventoryID(INT)(自動增量)
- InventoryItemName(VARCHAR)(255)
- InventoryCategory(INT)
接下來我有具有以下字段的另一個表名爲InventoryCategories:
- InventoryCategoryID(INT)(自動遞增)
- InventoryCategoryName(VARCHAR)(255)
- InventoryCategoryDescription(VARCHAR)(255)
接着,目前我有其選擇哪個查詢的組合框要更新DataGrid.ItemSource,其代碼fo如下所示
if (searchcategory == "All Stock")
{
InventoryDataContext dc = new InventoryDataContext();
var q =
from a in dc.GetTable<Inventory>()
select a;
SearchResults.ItemsSource = q;
}
現在,此結果將返回帶有列的Inventory整個表InventoryID,InventoryItemName和InventoryCategory。但是,它返回InventoryCategory列中的InventoryCategory的ID號。
任何人都可以幫助我在Inventory查詢中從InventoryCategories表中獲取InventoryCategoryName而不是ID嗎?這將需要什麼?
您將需要加入的'InventoryCategoryID'兩個表,並選擇一個新的鍵入(可能是匿名),在其中選擇名稱而不是完整的「庫存」對象。建議您製作一個適合您的視圖。然後,您可以簡單地查詢 –
請檢查文章,https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/join-clause。左外部連接應該適合你的任務 – ASpirin
你想爲所選InventoryID的InventoryCategoryName? – QweRty