简体   繁体   English

在asp.net中的数据复制错误消息

[英]Error message for data duplication in asp.net

I have tried this below code, but it throws a unique key constraint error. 我已经在下面的代码中尝试过此方法,但是它引发了唯一的键约束错误。 I would like it as a pop-up message; 我希望将其作为弹出消息; see my below code. 看到我下面的代码。

using (SqlConnection con2 = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString))
{
    var fromdate = DateTime.Parse(txtfromdate.Text);
    var todate = DateTime.Parse(txttodate.Text);
    var datedif1 = (todate - fromdate).Days;

    var sqlInsert = new SqlCommand("INSERT INTO datelist ([datedif],[batch],[daywk],[semester],[weekbatch],[subject],[facultyname],[facultyid],[WeekMonth])  VALUES  (@datedif,@batch,@daywk,@semester,@weekbatch,@subject,@facultyname,@facultyid,@weekMonth)", con2);
    var sqlParamater = sqlInsert.Parameters.Add("@datedif", SqlDbType.Date);
    var sqlParameter1 = sqlInsert.Parameters.Add("@batch", SqlDbType.NVarChar);
    var sqlParameter2 = sqlInsert.Parameters.Add("@daywk", SqlDbType.NVarChar);
    var sqlParameter3 = sqlInsert.Parameters.Add("@semester", SqlDbType.NVarChar);
    var sqlParameter4 = sqlInsert.Parameters.Add("@weekbatch", SqlDbType.NVarChar);
    var sqlParameter5 = sqlInsert.Parameters.Add("@subject", SqlDbType.NVarChar);
    var sqlParameter6 = sqlInsert.Parameters.Add("@facultyname", SqlDbType.NVarChar);
    var sqlParameter7 = sqlInsert.Parameters.Add("@facultyid", SqlDbType.NVarChar);
    var sqlParameter8 = sqlInsert.Parameters.Add("@WeekMonth", SqlDbType.NVarChar);

    con2.Open();
    try
    { 
        for (var i = 0; i <= datedif1; i++)
        {
            var consecutiveDate = fromdate.AddDays(i);

            sqlParamater.Value = consecutiveDate;
            sqlParameter1.Value = batch1;
            sqlParameter2.Value = dayweek;
            sqlParameter3.Value = semester;
            sqlParameter4.Value = weekbatch;
            sqlParameter5.Value = subject;
            sqlParameter6.Value = faculty;
            sqlParameter7.Value = facultyid;
            sqlParameter8.Value = weekmonth;

            int s = sqlInsert.ExecuteNonQuery();
        }
        con2.Close();
    }
    catch(ConstraintException ex)
    {
        throw new ApplicationException("data are duplicated");
    }
}

Here's a screen shot of the error which am getting, 这是正在出现的错误的屏幕截图,

You are catching a ConstraintException , but the insert is throwing a SqlException which is not a subclass of ConstraintException . 您正在捕获ConstraintException ,但是插入操作抛出SqlException ,它不是ConstraintException的子类。 Change the catch and you will get it handled. 更换渔获物,您将得到解决。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM