Open ayende opened 5 months ago
This matches C#:
using (var store = GetDocumentStore())
{
using (var s = store.OpenSession())
{
var searchThenWhere = s.Advanced.DocumentQuery<User>()
.Search("Name", "Ayende")
.WhereEquals("Name", "fd")
.ToString();
var whereThenSearch = s.Advanced.DocumentQuery<User>()
.WhereEquals("Name", "fd")
.Search("Name", "Ayende")
.ToString();
var linq = s.Query<User>()
.Search(x => x.Name, "Ayende")
.Where(x => x.Name == "fd")
.ToString();
}
}
output:
linq: from 'Users' where search(Name, $p0) and (Name = $p1)
searchThenWhere: from 'Users' where search(Name, $p0) or Name = $p1
whereThenSearch: from 'Users' where Name = $p0 and search(Name, $p1)
Relevant line: https://github.com/ravendb/ravendb/blob/bcd841f2f9f0551b6359fc9cfa99e06400bfc07e/src/Raven.Client/Documents/Session/AbstractDocumentQuery.cs#L1651 Commit: https://github.com/ravendb/ravendb/commit/15e808d95eaca7db20be18d6c115dc268b6226b6
The following code:
Will generate a query with
search("question", $p0) or not where("id()", ...)
Should be and not...