2013-01-11 2 views
1

https://addons.heroku.com/#search에는 멋진 검색 플러그인이 나열되어 있습니다. 내 MVC 프로젝트에서 이와 비슷한 것을 찾고있다.최고의 ASP.NET MVC 검색 솔루션

  1. 정확한 (좋은 결과)
  2. 전체 텍스트 검색을 단지 제목으로 검색을 필요로하지 않습니다
  3. 다양한 API를 구현하기가 매우 쉽습니다 (좋아합니다 S/O 질문 : 나는이 원하는)

놀라운 Google 검색 API를 사용해야하는지 궁금합니다. overflow.com에서 사용하는 검색 시스템 스택이 궁금합니다.

감사합니다.

답변

2

MVC 솔루션을 요청하면 알려 드리겠습니다.

는 구현
public class SearchResult{ 
    SearchResult(string title, string url, string description, int rank){ 
     this.Title = title; 
     this.Url = url; 
     this.Description = description; 
     this.Rank = rank; 
    } 
    public string Title { get; set; } 
    public string Url { get; set; } 
    public string Description { get; set; } 
    public int Rank { get; set; } 
} 

당신의 ViewModel이 ISearchable 인터페이스를 구현합니다 클래스의 SearchResult

을 인터페이스 ISearchable

interface ISearchable{ 
    SearchResult Search(string query); 
} 

를 구현합니다.

public class MyViewModel : ISearchable{ 
    public List<Article> Articles { get; set; } 

    #region ISearchable 
    public SearchResult Search(string query){ 
     string title = ""; 
     string url = ""; 
     string description = ""; 
     int rank = 0; 
     // Custom logic to search for an article 
     ... 
     return new SearchResult(title, url, description, rank); 
    } 
    #endregion 
} 

Unity으로, 예를 들어, Application_StartISearchable ViewModels을 등록합니다.

SearchController을 구현하고 동작 쿼리가 있습니다. model.Search()에서

public ActionResult Query(SearchQueryModel model){ 
    model.Search(); 
    return View(model); 
} 

는 가장 적합한 무엇이든 검색 API ISearchable 인터페이스, 사용을 구현 등록 ViewModels를 통해 검색을 수행. 또는 API를 사용하지 마십시오.

현실은 어떤 검색이라도 잠시 시간을 제공하지만 더 이상 검색 할 수없는 시간이되면 구현을 깨지 않고 전환 할 수 있습니다.

"최고의 ASP.NET MVC 검색 솔루션"을 요청했습니다. 귀하의 솔루션, 예산 등의 내부 작동을 알지 못하기 때문에 특정 제품을 선택할 수 없습니다.

엄격히 말해서 위의 시나리오에 플러그인 할 수있는 ASP.NET MVC의 관점에서 보면 좋은 사람이 되십시오. 청구서 등이 맞는 경우 ...