首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linq到实体-查询以检查输入的"n“字符数目是否匹配

问Linq到实体-查询以检查输入的"n“字符数目是否匹配
EN

Stack Overflow用户
提问于 2017-01-11 11:05:02
回答 1查看 115关注 0票数 1

我想要返回一组基于用户输入的字符的结果。

我创建了以下查询,它在LINQpad4中执行我想要的操作

LinqPad

代码语言:javascript
复制
var PostCodes = (from OA in OrganisationAddresses
               join OV in OpportunityVersions on OA.ID equals OV.LocationID
               where OA.CurrentVersion.PostCode.Contains("LH") 
               select OV.ID).ToList();

PostCodes.Dump();

用户输入"LH“字符串,我得到13个结果。

现在,当我在我的生产环境中放置一个非常相似的查询时,如果我输入"LH“,结果将为零。它只在输入完整字符串(如"LH1 1HP“)时返回匹配。

生产

代码语言:javascript
复制
Builder = Builder.And(o => 
(from OA in Context.OrganisationAddresses
 join OV in Context.OpportunityVersions on OA.ID equals OV.LocationID
 where Options.PostCode.Contains(OA.CurrentVersion.PostCode) 
 && OV.ID == o.CurrentVersionID select OV.ID).Any());

我使用的是SQLServer2012和LINQ实体。我想知道是什么原因造成的,以及如何解决它。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-11 11:28:53

你好像错误地交换了代码

代码语言:javascript
复制
Builder = Builder.And(o => 
(from OA in Context.OrganisationAddresses
 join OV in Context.OpportunityVersions on OA.ID equals OV.LocationID
 where OA.CurrentVersion.PostCode.Contains(Options.PostCode) // fix in this string
 && OV.ID == o.CurrentVersionID select OV.ID).Any());

此外,在prod中还有其他条件:

代码语言:javascript
复制
&& OV.ID == o.CurrentVersionID
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41589196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档