簡體   English   中英

Linq to Sql中的子查詢

[英]subqueries in Linq to Sql

即時消息卡在linq查詢中,即時消息在其中搜索數據庫並使用顯示結果

DBSearchDataContext db = new DBSearchDataContext();
        object q = from b in db.Products
                   where b.ProductCode.Contains(val) |
                   b.ProductName.Contains(val) |
                   b.Specification.Contains(val) |
                   b.Description.Contains(val) |                       
                   b.Category.Contains(val) 
                   select b;

      GridView1.DataSource = q;
     GridView1.DataBind();

我無法從categoryID匹配的類別表中顯示類別名稱。

我這樣在SQL中這樣做

如何在linq中做到這一點

SELECT ID, ProductCode, DisplayOrder, ProductName, imgThumb, inStock, Status, Amount, (SELECT Category FROM Category AS aaa WHERE (Products.CategoryID = CategoryID)) AS Category FROM Products ORDER BY ID DESC

幫我

如果缺少某些映射,為什么不使用簡單的聯接?

var q = from p in db.Products
        join c in db.Category on p.CategoryID equals c.CategoryID
        where ...
        select new
        {
          p.ProductCode,
          ...,
          c.Category
        };

或具有適當的映射:

var q = from p in db.Products
        where ...
        select new
        {
          p.ProductCode,
          ...,
          p.Category.Category
        };

您可以將子查詢放入Linq LET子句中。 看到

例如。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM