我增加了针对三个关键项,不能为空的判断语句,但整体代码就报错

我增加了针对三个关键项,不能为空的判断语句,但整体代码就报错了,请给看一下是什么原因吧;

img


```c#
 private void btnsave_Click(object sender, EventArgs e)
        {
            Form1 form1 =(Form1) this.Owner;
            
            DateTime inputdate = form1.dateTimePicker1.Value;
            string inputworkshop = form1.comworkshop.Text;
            string inputbatchNo = form1.batchNo.Text;
            string inputprobatchNo = probatchNo.Text; 
            string inputprocess = form1.comprocess.Text;      
            string inputteams = form1.comteams.Text;
            string inputbanci = textbc.Text;
            string inputproname = form1.comproduct.Text;
            string inputspec = form1.comspec.Text;
            string inputunit = form1.comunit.Text;
            string inputstate = form1.comstate.Text;
            string inputdaypro = daypro.Text;
            string inputsumpro = sumpro.Text;
            string inputpax = pax.Text;
            string inputulh = ulh.Text;
            string inputnote = note.Text;

           
            SqlConnection Conn = new SqlConnection("server= 192.168.100.247; database= Whmesinfo;User= Sa;Password=whyy@2021");

            Conn.Open();

            if (string.IsNullOrEmpty(inputprobatchNo) || string.IsNullOrEmpty(inputbatchNo)|| inputprocess == "请选择"); 
            //判断关键的三项内容是否为空
            {
                MessageBox.Show("请录入“批号、产品批号、工序”,这三项关键信息", "谢谢", MessageBoxButtons.OK, MessageBoxIcon.Information);
               return;
            }

            else {

            string str = @"select count(*) from w_prohourcount where batchNo='" + inputbatchNo.ToString() + "'and probatchNo='" + inputprobatchNo.ToString() + "'and process='" + inputprocess.ToString() + "'";
            SqlCommand com = new SqlCommand(str, Conn);
            int intcont = Convert.ToInt32(com.ExecuteScalar());

            if (intcont > 0)//判断数据库中是否有相同的录
            {
                MessageBox.Show("对不起!“批号+产品批号+工序”,和历史记录有重复,请检查确认!");
            }
                                  
            else
            {
                try
                {

                    string SqlString = @"INSERT INTO [dbo].[w_prohourcount]
                   (date,workshop,teams,banci,process,batchNo,probatchNo,proname,spec,unit,daypro,sumpro,state,pax,ulh,note)                                        
                  values  
                   (@date,@workshop,@teams,@banci,@process,@batchNo,@probatchNo,@proname, @spec,@unit,@daypro,@sumpro,@state,@pax,@ulh,@note)";

                    SqlCommand comm = new SqlCommand(SqlString, Conn);

                    comm.Parameters.AddWithValue("@date", inputdate);
                    comm.Parameters.AddWithValue("@workshop", inputworkshop);
                    comm.Parameters.AddWithValue("@teams", inputteams);
                    comm.Parameters.AddWithValue("@banci", inputbanci);
                    comm.Parameters.AddWithValue("@process", inputprocess);
                    comm.Parameters.AddWithValue("@batchNo", inputbatchNo);
                    comm.Parameters.AddWithValue("@probatchNo", inputprobatchNo);
                    comm.Parameters.AddWithValue("@proname", inputproname);
                    comm.Parameters.AddWithValue("@spec", inputspec);
                    comm.Parameters.AddWithValue("@unit", inputunit);
                    comm.Parameters.AddWithValue("@daypro", inputdaypro);
                    comm.Parameters.AddWithValue("@sumpro", inputsumpro);
                    comm.Parameters.AddWithValue("@state", inputstate);
                    comm.Parameters.AddWithValue("@pax", inputpax);
                    comm.Parameters.AddWithValue("@ulh", inputulh);
                    comm.Parameters.AddWithValue("@note", inputnote);
                    comm.ExecuteNonQuery();

                    MessageBox.Show("数据保存成功!");
                }
                catch (Exception ex)
                {
                    // 显示保存失败的错误信息
                    MessageBox.Show("保存失败:" + ex.Message);
                }
                finally
                {
                    // 关闭数据库连接
                    Conn.Close();
                }

            }
        }}


```

if(xxxx)**;** //这里多符号了,违反语法规则
{
}

检查一下 是不是 { } 缺失的问题

你把鼠标移到红色波浪线,会出错误提示ok?

【以下回答由 GPT 生成】

问题分析:

根据您提供的信息,增加了对三个关键项的判断语句后代码报错,我们可以分析以下几个可能的原因导致报错:

  1. 字段或变量名称错误:可能是输入项的名称有误,导致引用错误。
  2. 类型错误:判断条件中的数据类型可能存在问题。
  3. 缺少引用:可能缺少其他必要的引用。

解决方案: 根据您提供的代码进行分析,以下是我可以提供的解决方案:

  1. 检查字段或变量名称:
  2. 确保 probatchNobatchNocomprocess 的名称与实际输入框控件的名称相匹配。
  3. 确保 dayprosumpropaxulhnote 的名称与实际文本框控件的名称相匹配。

  4. 检查判断条件是否正确:

  5. 确保 inputprocess 与 "请选择" 进行比较时的数据类型正确。如果是字符串类型,可以使用 inputprocess.Equals("请选择") 进行比较。

  6. 检查可能缺少的引用:

  7. 确保在代码文件的顶部引入了 using System.Data.SqlClient

如果您已经进行了以上检查,并且问题仍然存在,请提供更具体的错误信息或错误堆栈跟踪,以便我们更好地帮助您解决问题。

备注:根据代码中的语法和命名规范推测您的代码是C#语言编写的,不是Java。我会根据C#语言提供解决方案。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^