LINQ 到 SQL - 从 X 开始,其中 X = “1” 选择 Y

本文关键字:选择 其中 SQL 开始 LINQ | 更新日期: 2023-09-27 17:56:44

我有一个关于 LINQ 中查询的问题:

    DataClasses1DataContext db = new DataClasses1DataContext();
    var shpnme = from p in db.Orders
                  where p.ShipCity == "A"
                  select p.ShipName;
我是否正确地

认为数据库将使用订单数据库,并且在"ShipCity"中的任何条目="A"中,它将返回该ShipCity条目的Shipname?

你也可以做一个通配符吗?例如 A*

LINQ 到 SQL - 从 X 开始,其中 X = “1” 选择 Y

是的,您是对的,这将返回所有船名,其中船城等于"A"。一种通配符搜索可以使用.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;
相关文章: