Я пытаюсь отобразить рейтинг поиска вместе с результатами, используя MongoDB и драйвер C # на веб-сайте MVC.
Моя цель - отобразить сетку примерно так:
- Это результат один
- Это результат два
- Это результат три
Моя модель:
public class Product
{
[BsonId]
public string Id { get; set; }
public string Name { get; set; }
public int Rank { get; set; }
}
Мой код поиска из уровня хранилища выглядит так:
public IList<TEntity> Find<TEntity>(Expression<Func<TEntity, bool>> criteria) where TEntity : class
{
return this.GetQuery<TEntity>().AsQueryable().Where(criteria).ToList<TEntity>();
}
Мой контроллер выглядит так:
public ActionResult Index(string query)
{
var model = new SearchModel();
model.Results = this.Repository.Find<Product>(x => x.Name == “some query”)
.OrderBy(model.GridSortOptions.Column, model.GridSortOptions.Direction)
.AsPagination(1, 25);
return View(model);
}
Команда Mongo.Find должна заполнить модель каждой записью и вычислить ранг (1, 2, 3 и т. Д.).
Как мне это сделать, используя драйвер C #? Я также использую провайдера беглого linq.