【问题标题】:How to implement search features in ASP.NET MVC applications如何在 ASP.NET MVC 应用程序中实现搜索功能
【发布时间】:2009-02-18 23:19:42
【问题描述】:

我可以想象在 ASP.NET MVC 应用程序中实现搜索功能的许多方法,但由于我找不到太多文档,我想知道您是否有任何通用模式、技术或通用方法来在 ASP 中实现搜索功能。 NET MVC 应用程序(类似于 stackoverflow)。我想到的一些技术是:

  • SQL Server 全文搜索
  • 外部搜索引擎(如 Search Server 2008)
  • Lucene.NET

...但是将它们与 ASP.NET MVC 集成的最佳方法是什么?

想法?

【问题讨论】:

    标签: asp.net-mvc design-patterns search


    【解决方案1】:

    您具体要问什么并不完全清楚,但总的来说:

    1. 编写返回搜索表单的视图助手或部分视图。在您需要显示搜索框的其他页面中调用它。将表单操作设为 GET,而不是 POST。
    2. 对于站点搜索,您可能需要一个搜索控制器。为了在一种特定类型的数据中进行搜索,您可以将操作添加到现有控制器或将参数添加到现有操作。在大多数情况下,我们唯一需要添加的是针对特定数据类型的通用“列表”操作的参数。搜索表单调用“List”并使用搜索查询字符串设置参数。
    3. 实际搜索是在您的存储库中完成的。这是应用程序中唯一知道 SQL Server 或 Lucene 之类的东西的部分。对于琐碎的情况,控制器可以将 .Where 附加到存储库返回的 IQueryable

    【讨论】:

      【解决方案2】:

      我相信 Jeff Atwood 在他的一篇博文中谈到了他如何使用sitemaps 来让 google 处理堆栈溢出时的大部分搜索功能。当人们无论如何都可能只使用谷歌时,为什么还要编写自己的搜索算法?

      【讨论】:

        猜你喜欢
        • 2011-11-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-01-08
        • 2022-07-07
        • 1970-01-01
        相关资源
        最近更新 更多