समाधान की तलाश में मैंने पाया FilterDefinition<T>.Inject()
एक्सटेंशन विधि। इसलिए हम गहराई तक जा सकते हैं और IMongoQueryable<T>
पर एक और एक्सटेंशन बना सकते हैं :
public static class MongoQueryableFullTextExtensions
{
public static IMongoQueryable<T> WhereText<T>(this IMongoQueryable<T> query, string search)
{
var filter = Builders<T>.Filter.Text(search);
return query.Where(_ => filter.Inject());
}
}
और इसे इस तरह इस्तेमाल करें:
IMongoDatabase database = GetMyDatabase();
var results = database
.GetCollection<Blog>("Blogs")
.AsQueryable()
.WhereText("stackoverflow")
.Take(10)
.ToArray();
आशा है कि यह किसी की मदद करेगा :)