我在catch异常中收到错误,我想在输入重复的主键时捕获异常

时间:2019-05-05 14:04:33

标签: c# mysql asp.net

catch块不接受Exception,强调“ if”语句以及“ ExceptionHandled”中的Exception,它表示“ System.Exception不包含'Exception'的定义,并且没有扩展方法'Exception'。 / p>

 protected void btnSubmit_Click(object sender, EventArgs e)
    {
        MySqlCommand cmd = new MySqlCommand("insert into reportcrime" + "(Name,CNIC,Phone1,Phone2,Email,Gender,City,Address,CrimeType,CrimeDetail)values(@Name,@CNICNO,@ContactNo.1,@ContactNo.2,@EmailAddress,@Gender,@CityName,@PostalAddress,@CrimeType,@CrimeDetail)", con);
        try
        { 
        cmd.Parameters.AddWithValue("@Name", txtName.Text);
        cmd.Parameters.AddWithValue("@CNICNO", txtCnicNo.Text.ToString());
        cmd.Parameters.AddWithValue("@ContactNo.1", txtcontactNo1.Text);
        cmd.Parameters.AddWithValue("@ContactNo.2", txtcontactNo2.Text);
        cmd.Parameters.AddWithValue("@EmailAddress", txtEmail.Text);
        cmd.Parameters.AddWithValue("@Gender", ddlGender.SelectedItem.Value);
        cmd.Parameters.AddWithValue("@CityName", txtCityName.Text);
        cmd.Parameters.AddWithValue("@PostalAddress", txtaddress.Text);
        cmd.Parameters.AddWithValue("@CrimeType", ddlCrimeType.SelectedItem.Value);
        cmd.Parameters.AddWithValue("@CrimeDetail", txtCrimeDetails.Text);

        cmd.ExecuteNonQuery();

           }
        catch (Exception e)
        {
             if (e.Exception.Message != null)
             {
                if (e.Exception.Message.Contains("duplicate key"))
                  {
                   Response.Write("You're already registered!");
                   e.ExceptionHandled = true;
                  }   
             }
         }

    }

0 个答案:

没有答案