目前即时通讯试图让搜索功能查询工作。我搜索一个名为“追踪”我的输入表是一个搜索字段。 轨道表有:标题,艺术家和专辑。我能够搜索“迈克尔·杰克逊”的艺术家或者“打败它”将藏汉工作,但我不能让它的工作“迈克尔·杰克逊打败它”,所以我bassicly希望它在同一时间同时搜索标题和艺术家。 我当前的查询搜索功能查询LINQ
Db.From<Track>()
.Where(q => q.Title.Contains(request.Trackname) ||
q.Artist.Contains(request.Trackname) ||
q.Album.Contains(request.Trackname))
.Limit(20);
会并欣赏一些帮助
您需要拆分输入要搜索这两个领域,或合并列,即'(q.Artist +“” + q.Title)。载有(request.TrackName);' – Ric
你应该分裂您输入的字符串和单独搜索每个部分。您可以决定是否要申请AND或OR规则。这是常见的,以允许报价执行某些短语将被处理为一体,如'“Michael Jackson的”,“打败它”'这将查询为文本 – musefan
的2块不应该'request.Trackname.Contains(Q。标题)...'? –