考虑这个调用:
results = db.Students.Where(x => x.Code == current_search);
我希望只能获得确切数字的结果。如果我搜索639
它还返回其他包含639
的数字,例如1639
。该字段包含文本字符串,因此不能用作整型字段。
如何只返回要查找的单个数字?大概我需要某种正则表达式,但它可以插入到这里还是代码会损坏?
如何只返回正在查找的单个数字?
您可能需要重新考虑存储数据的方式。
大概我需要某种正则表达式,但可以在此处插入吗 还是代码会崩溃?
您将无法将正则表达式添加到 linq,因为它无法转换为 SQL。我在这里看到的最接近的方法是首先使用 Contains 获取过滤后的数据。
results = db.Students.Where(x => x.Code.Contains(current_search));
然后根据您的正则表达式进一步筛选结果集。
顺便说一下,x.Code == current_search 将获得完全匹配。