C# 在搜索页面上至少需要一个文本框中的数据

C# 在搜索页面上至少需要一个文本框中的数据,c#,asp.net,C#,Asp.net,我试图要求用户在运行搜索查询之前,至少在五个文本框中的一个框中输入数据 我收到关于的错误消息 将字符串转换为布尔值 2“运算符'&&'不能应用于'string'和'string'类型的操作数” 请尝试下面的代码。在您的示例中,您使用了“=”而不是C#中的“=” 完成相同任务的另一种方法是: if (!String.IsNullorEmpty(txtLoginName.Text) && !String.IsNullorEmpty(txtDisplayNam

我试图要求用户在运行搜索查询之前,至少在五个文本框中的一个框中输入数据

我收到关于的错误消息

  • 将字符串转换为布尔值 2“运算符'&&'不能应用于'string'和'string'类型的操作数”


  • 请尝试下面的代码。在您的示例中,您使用了“=”而不是C#中的“=”

    完成相同任务的另一种方法是:

       if (!String.IsNullorEmpty(txtLoginName.Text) && 
            !String.IsNullorEmpty(txtDisplayName.Text) && 
            !String.IsNullorEmpty(txtCode.Text) && 
            !String.IsNullorEmpty(txtEmailAddress.Text) && 
            !String.IsNullorEmpty(txtName.Text))
    

    我试图养成使用String.IsNullOrEmpty()而不是直接比较器的习惯。虽然它在幕后也做同样的事情(AFAIK),但当您不使用文本框,而是使用可能为空的字符串值时,这是一个很好的规则

    if (String.IsNullOrEmpty(txtLoginName.Text) && 
        String.IsNullOrEmpty(txtDisplayName.Text) && 
        String.IsNullOrEmpty(txtCode.Text) && 
        String.IsNullOrEmpty(txtEmailAddress.Text) && 
        String.IsNullOrEmpty(txtName.Text))
    {
    }
    

    每个测试周围的括号也会澄清,例如

    if ( (txtLoginName.Text == String.Empty) &&
         (txtDisplayName.Text == String.Empty) )
    {
    }
    


    我个人的观点是,对于String.IsNullOrEmpty版本,额外的括号太过杂乱。当然,这只是我的意见。嗯,我有一个月的时间来考虑,我同意!
    if (String.IsNullOrEmpty(txtLoginName.Text) && 
        String.IsNullOrEmpty(txtDisplayName.Text) && 
        String.IsNullOrEmpty(txtCode.Text) && 
        String.IsNullOrEmpty(txtEmailAddress.Text) && 
        String.IsNullOrEmpty(txtName.Text))
    {
    }
    
    if ( (txtLoginName.Text == String.Empty) &&
         (txtDisplayName.Text == String.Empty) )
    {
    }
    
    if ( (String.IsNullOrEmpty(txtLoginName.Text)) &&
         (String.IsNullOrEmpty(txtDisplayName.Text)) )
    {
    }