无法使用C#插入数据库asp.net - 未处理的异常

时间:2016-10-15 21:14:16

标签: c# asp.net database visual-studio-2015

我正在尝试使用在Microsoft Visual Studio 2015中创建的asp.net表单将用户数据插入到数据库中。我收到以下错误:

  

异常详细信息:System.Web.HttpException:无法找到控件ID   ' txtName的'由' ControlToValidate'引用' reqName'。

的财产      

来源错误:

     

执行期间生成了未处理的异常   当前的网络请求。有关的来源和位置的信息   可以使用下面的异常堆栈跟踪来识别异常。

     

堆栈追踪:

     

[HttpException(0x80004005):无法找到控件ID' txtName'   由' ControlToValidate'引用属性' reqName'。]
  System.Web.UI.WebControls.BaseValidator.CheckControlValidationProperty(字符串   name,String propertyName)+183
  System.Web.UI.WebControls.BaseValidator.ControlPropertiesValid()+36
  System.Web.UI.WebControls.BaseValidator.OnPreRender(EventArgs e)+36
  System.Web.UI.Control.PreRenderRecursiveInternal()+ 166 6   System.Web.UI.Control.PreRenderRecursiveInternal()+236
  System.Web.UI.Control.PreRenderRecursiveInternal()+236
  System.Web.UI.Control.PreRenderRecursiveInternal()+236
  System.Web.UI.Control.PreRenderRecursiveInternal()+236
  System.Web.UI.Control.PreRenderRecursiveInternal()+236
  System.Web.UI.Page.ProcessRequestMain(布尔   includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)   4713

c#代码将用户数据插入数据库:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;


public partial class _Default : System.Web.UI.Page
{
    SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C: \Users\P\Docs\Visual Studio 2015\WebSites\WebSite2\App_Data\Database.mdf;Integrated Security=True");

    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Unnamed1_Click(object sender, EventArgs e)
    {
        con.Open();
        SqlCommand cmd = con.CreateCommand();
        cmd.CommandType = System.Data.CommandType.Text;
        cmd.CommandText = "insert into Table values('" + pName.Text + "','" + pEmail.Text + "')";
        cmd.ExecuteNonQuery();

        con.Close();
    }
}

我的数据库文件有两行,一行用于名称(pName),另一行用于电子邮件(pEmail)

1 个答案:

答案 0 :(得分:1)

  

[HttpException(0x80004005):无法找到控件ID'txtName'   由'reqName'的'ControlToValidate'属性引用。]

消息很明显,在您的aspx页面上(不在代码后面),您已经定义了txtName控件上的页面上不存在的控件(reqName), ControlToValidate参数....