You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C# LINQ中实现ID包含指定数字的模糊搜索

C# LINQ实现数字ID的字符串包含筛选

场景说明

你需要从前端接收字符串类型的数字查询词,筛选出列表中Id(int类型)包含该数字的对象。比如输入"8"时,Id为8、80、180的对象都需要被匹配。

代码示例

首先定义你的业务对象类(替换为实际类):

public class BusinessObject
{
    public int Id { get; set; }
    // 其他业务属性
}

核心筛选逻辑:

// 从前端获取的字符串查询词
string searchQuery = "8";
// 你的对象列表
List<BusinessObject> objectList = new List<BusinessObject>
{
    new BusinessObject { Id = 1 },
    new BusinessObject { Id = 8 },
    new BusinessObject { Id = 80 },
    new BusinessObject { Id = 90 },
    new BusinessObject { Id = 180 }
};

// 先处理查询词为空/空白的情况,避免无意义匹配
if (!string.IsNullOrWhiteSpace(searchQuery))
{
    var filteredResult = objectList.Where(obj => obj.Id.ToString().Contains(searchQuery)).ToList();
    // filteredResult 即为符合条件的对象列表
}

补充说明

  • 如果需要兼容非纯数字查询词的大小写场景,可添加字符串比较规则:
    obj.Id.ToString().Contains(searchQuery, StringComparison.OrdinalIgnoreCase)
    
  • 若查询词为空或全空白,建议直接返回原列表或按业务需求处理,避免Contains("")匹配所有元素的情况。

内容的提问来源于stack exchange,提问作者KrzysztofBojarczuk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 17:10:16