gpt4 book ai didi

C# - 如何在 IQueryable 对象中搜索 Where Like %

转载 作者:太空狗 更新时间:2023-10-29 21:08:13 24 4
gpt4 key购买 nike

我找不到像在 SQL 命令中那样使用 LIKE %some%text% 运算符搜索 IQueryable 对象的方法。

目前我这样做:

System.Data.Entity.DbSet<Shop> database_Shops = database.Shops;
string searched_shop = !String.IsNullOrEmpty(post_data["shop"]) ? post_data["shop"] : " ";

ViewBag.shops = database_Shops
.Where(shop => shop.Name.ToUpper().Contains( searched_shop.ToUpper()))
.Take(RESULTS_PER_PAGES * pageNumber);

但它在 shop.Name 中找不到没有空格的条目。有人知道这样做的方法吗?

非常感谢!

最佳答案

您可以在命名空间 System.Data.Linq.SqlClient 中使用 SqlMethod :

database_Shops.Where(shop => SqlMethods.Like(shop.Name, "%some%text%"));

SqlMethods.Like Method (String, String)

在 EF Context 中,您可以在命名空间 System.Data.Objects.SqlClient.SqlFunctions 中使用 SqlFunctions

database_Shops.Where(shop => SqlFunctions.PatIndex("%some%text%", shop.Name) > 0);

SqlFunctions.PatIndex Method (String, String)

关于C# - 如何在 IQueryable 对象中搜索 Where Like %,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36502114/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com