HomeController.cs 900 B

123456789101112131415161718192021222324252627
  1. using Masuit.LuceneEFCore.SearchEngine;
  2. using Masuit.LuceneEFCore.SearchEngine.Interfaces;
  3. using Microsoft.AspNetCore.Mvc;
  4. using System.Threading.Tasks;
  5. using WebSearchDemo.Database;
  6. namespace WebSearchDemo.Controllers
  7. {
  8. [Route("[controller]/[action]")]
  9. public class HomeController : Controller
  10. {
  11. private readonly ISearchEngine<DataContext> _searchEngine;
  12. public HomeController(ISearchEngine<DataContext> searchEngine)
  13. {
  14. _searchEngine = searchEngine;
  15. }
  16. [HttpGet]
  17. public async Task<IActionResult> Index(string s, int page, int size)
  18. {
  19. //var result = _searchEngine.ScoredSearch<Post>(new SearchOptions(s, page, size, "Title,Content,Email,Author"));
  20. var result = _searchEngine.ScoredSearch<Post>(new SearchOptions(s, page, size, typeof(Post)));
  21. return Ok(result);
  22. }
  23. }
  24. }