C# 不存在从对象类型System.Windows.Forms.DateTimePicker到已知托管提供程序本机类型的映射

C# 不存在从对象类型System.Windows.Forms.DateTimePicker到已知托管提供程序本机类型的映射,c#,C#,单击“保存”按钮时出现以下错误。对象类型System.Windows.Forms.DateTimePicker与已知托管提供程序本机类型之间不存在映射 private void btnSave_Click(object sender, EventArgs e) { //if (Isvalid()) { SqlCommand cmd = new SqlCommand("sp_rcdoc", con); cmd.CommandType = System

单击“保存”按钮时出现以下错误。对象类型System.Windows.Forms.DateTimePicker与已知托管提供程序本机类型之间不存在映射

private void btnSave_Click(object sender, EventArgs e)
{
    //if (Isvalid())
    {
        SqlCommand cmd = new SqlCommand("sp_rcdoc", con);
        cmd.CommandType = System.Data.CommandType.StoredProcedure;
        cmd.Parameters.Add("@regno", tbx1.Text);
        cmd.Parameters.Add("@appname", tbx2.Text);
        cmd.Parameters.Add("@DOI", dtpc1);
        cmd.Parameters.Add("@COV", cmbx.Text);
        cmd.Parameters.Add("@validtill", dtpc2);
        cmd.Parameters.Add("@imgloc", ScanDlg.path);
        // cmd.Parameters.Add("@username", Login.currentuser);
        // cmd.Parameters.Add("@imgno", popuprds.nofrecords);
        cmd.Parameters.Add("@result", SqlDbType.Int).Direction = System.Data.ParameterDirection.Output;
        if (con.State != ConnectionState.Open)
            con.Open();
        cmd.ExecuteNonQuery();
        int i = Convert.ToInt16(cmd.Parameters["@result"].Value);
        if (i > 0)
        {
            MessageBox.Show("Record inserted", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
            pbx.Image = ScanDlg.img;
            pbx.Load(@"E:\DMSProject\WindowsFormsApplication1\PROJECT SCANNED\ image0.jpeg");
            //pictureBox1.Load(@"C:\Users\chandrasekhar\Desktop\PROJECT SCANNED\ image.jpeg");
        }
        else
            MessageBox.Show("Record not inserted", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
    }
}
应该是

cmd.Parameters.Add("@DOI", dtpc1.Value);

应该是

cmd.Parameters.Add("@validtill", dtpc2.Value);

谢谢我当时也犯了一个类似的错误,我的大脑在为这个原因放屁,尽管回想起来这是显而易见的。
cmd.Parameters.Add("@validtill", dtpc2);
cmd.Parameters.Add("@validtill", dtpc2.Value);