繁体   English   中英

如何清除asp.net中的错误

[英]How to clear Error in asp.net

我已经在设计我的网页该页面已运行,但值未存储在数据库中

错误:

从Hdr_AccountType获取数据时发生错误。

从对象类型System.Web.UI.WebControls.ListItem到已知的托管提供程序本机类型没有映射。

protected void btnSave_Click(object sender, EventArgs e)
{
    Int32 st;
    int len = browser.PostedFile.ContentLength;
    byte[] pic = new byte[len];
    browser.PostedFile.InputStream.Read(pic, 0, len);

    SqlCommand Cmd = new SqlCommand();
    SqlConnection Cnn = new SqlConnection();
    string ConnectionString;
    ConnectionString = ConfigurationManager.ConnectionStrings["PhotostudioConnectionString"].ConnectionString;

    Cnn.ConnectionString = ConnectionString;
    if (Cnn.State != ConnectionState.Open)
        Cnn.Open();
    Cmd.Connection = Cnn;
    Cmd.CommandType = CommandType.StoredProcedure;
    Cmd.CommandText = "sproc_Ins_ManualPhotoSettingsDetails";
    Cmd.Parameters.Clear();
    // Cmd.Parameters.AddWithValue("@Id", txtBillNo.Text);
    Cmd.Parameters.AddWithValue("@Name", txtName.Text);
    Cmd.Parameters.AddWithValue("@Phoneno", txtPhoneno.Text);
    Cmd.Parameters.AddWithValue("@Startdate", rdpDate.SelectedDate); 
    Cmd.Parameters.AddWithValue("@Enddate", rdpDelivDate.SelectedDate);
    Cmd.Parameters.Add("@Systemurl", SqlDbType.Image).Value = pic;
    SqlParameter Src = new SqlParameter("@FilePath", SqlDbType.NVarChar, 450);
    Src.Value = browser.PostedFile.FileName;
    Cmd.Parameters.Add(Src);
    Cmd.Parameters.AddWithValue("@Work", TextBox1.Text);
    Cmd.Parameters.AddWithValue("@Size", cmbSize.SelectedItem);
    Cmd.Parameters.AddWithValue("@Rate", txtRate.Text);
    Cmd.Parameters.AddWithValue("@Noofcopies", txtNoofcopies.Text);
    Cmd.Parameters.AddWithValue("@Total", txtTotal.Text);
    Cmd.Parameters.AddWithValue("@Paidamount", txtPaid.Text);
    Cmd.Parameters.AddWithValue("@Balance", txtbal.Text);


    try
    {
        st = Convert.ToInt32(Cmd.ExecuteScalar());

    }
    catch (Exception ex)
    {            
        throw new ApplicationException("An Error Occured While getting Data From Hdr_AccountType." + ex.Message);
        lblError.Visible = true;
        lblError.Text = "An Error Occured While " + ex.Message.ToString();
        return;
    }
    Cmd.Dispose();

这不是要清除...您需要查看原因:

从对象类型System.Web.UI.WebControls.ListItem到已知的托管提供程序本机类型没有映射。

我敢打赌,您需要使用cmbSize.SelectedItem.Value而不是cmbSize.SelectedItem

顺便说一句,将数据库访问权限放在页面中是一个非常糟糕的概念,您应该创建一个仅用于处理数据库部分的类。

暂无
暂无

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

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