簡體   English   中英

LINQ to SQL-從X WHERE X =“ 1” SELECT Y

[英]LINQ to SQL - FROM X WHERE X = “1” SELECT Y

我對LINQ中的查詢有疑問:

    DataClasses1DataContext db = new DataClasses1DataContext();
    var shpnme = from p in db.Orders
                  where p.ShipCity == "A"
                  select p.ShipName;

我是否認為該數據庫將使用Orders數據庫,並且在“ ShipCity”中的任何條目=“ A”的哪個地方都將返回該ShipCity條目的船名,這是正確的嗎?

您還能做通配符嗎? 例如A *

是的,您是正確的,這將返回ShipCity等於“ A”的所有ShipName。 可以使用.Contains() .StartsWith().EndsWith()進行某種通配符搜索

var shpnme = from p in db.Orders
             where p.ShipCity.StartsWith("A")
             select p.ShipName;

它將使用Orders ,而不是數據庫 該數據庫在邏輯上等於LINQ to SQL中的上下文。 否則,您的假設是正確的。

要執行通配符,請使用StartsWith()方法。

var shpnme = from p in db.Orders
             where p.ShipCity.StartsWith("A")
             select p.ShipName;

您可以在此解決方案中使用.Contains(), .StartsWith() and .EndsWith()

DataClasses1DataContext db = new DataClasses1DataContext();
    var shpnme = from p in db.Orders
                  where p.ShipCity.Contains("A")
                  select p.ShipName;

要么

DataClasses1DataContext db = new DataClasses1DataContext();
        var shpnme = from p in db.Orders
                      where p.ShipCity.EndsWith("A")
                      select p.ShipName;

OR

DataClasses1DataContext db = new DataClasses1DataContext();
        var shpnme = from p in db.Orders
                      where p.ShipCity.StartsWith("A")
                      select p.ShipName;

暫無
暫無

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

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