【问题标题】:How to implement search functionality when there is 3 texboxes and one search button in mvc 4mvc 4中有3个文本框和1个搜索按钮时如何实现搜索功能
【发布时间】:2016-02-15 12:22:40
【问题描述】:
CREATE TABLE [dbo].[upload] (
    [docid]        INT            IDENTITY (1, 1) NOT NULL,
    [clientid]     INT            NULL,
    [clientname]   NVARCHAR (15)  NULL,
    [employeeid]   INT            NULL,
    [empcitizenid] INT            NULL,
    [employeename] NVARCHAR (15)  NULL,
    [nationality]  NVARCHAR (20)  NULL,
    [filepath]     NVARCHAR (MAX) NULL,
    [filename]     NVARCHAR (100) NULL)

在我看来,有 3 个文本框接受 clientd、employeeid、empcitizenid 和一个搜索按钮。当文本框数据与下面的数据库匹配时,我想将数据绑定到 Web 网格。 现在搜索有 6 个场景。 1.如果所有三个文本框都包含有效数据,则成功 2.如果其中一个包含有效数据,则保持为空,然后也成功 3.all all 包含无效数据然后无效。 4.如果两个文本框中的任何一个包含有效数据,那么这样的成功有很多情况。在所有场景中实现这一点的最佳方法是什么 ?

【问题讨论】:

  • 您是否使用一些 ORM,例如 Entity Framework 或 ADO.NET 命令?
  • 我正在使用 ado.net 实体模型
  • 有什么好的方法可以做到这一点吗?
  • 您想要完全匹配还是包含?
  • 我想要完全匹配.. 不需要包含

标签: entity-framework linq model-view-controller


【解决方案1】:

简单的答案是为每个输入执行empty checklike,然后and 将它们全部放在您的位置原因中。

WHERE
    (RTRIM(LTRIM(ISNULL(@FIELD1,''))) = '' OR [Column1] LIKE '%' + @FIELD1 +'%')
    AND (RTRIM(LTRIM(ISNULL(@FIELD2,''))) = '' OR [Column2] LIKE '%' + @FIELD2 +'%')

...由于您使用的是 ADO.Net,请确保使用 SqlParameters 来防止 SQL 注入。

【讨论】:

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