C# 名称';UName&x27;在当前上下文中不存在
当尝试注册到我的数据库时,我收到“名称‘UName’在当前上下文中不存在”错误 Register.aspx:C# 名称';UName&x27;在当前上下文中不存在,c#,asp.net,C#,Asp.net,当尝试注册到我的数据库时,我收到“名称‘UName’在当前上下文中不存在”错误 Register.aspx: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Register.aspx.cs" Inherits="Register" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="se
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Register.aspx.cs" Inherits="Register" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Registration Page</title>
</head>
<body>
<p>This is the registration page</p>
<a href ="Default.aspx">Home</a> | <a href ="#">Register</a>
<form id="form1" runat="server">
<div>
<p>Enter First Name :</p>
<p>
<asp:TextBox ID="UName" runat="server" Width="271px"></asp:TextBox>
</p>
<p>
<asp:Button ID="registerButton" runat="server" Text="REGISTER" OnClick="registerEventMethod" />
</p>
</div>
</form>
</body>
</html>
为什么我会犯这个错误?我尝试了几种解决方案,但都失败了。因此我解决了自己的问题,第一个初始问题是我尝试将.aspx文件复制到一个新的解决方案中,但是这没有复制到.aspx.designer.cs文件中,因此导致了问题 但是,在尝试手动重新编写一个带有设计器文件的新版本后,我忘记将.cs文件包含到解决方案的名称空间中,因此产生了一个新问题
然而,在将.cs文件包含到名称空间之后,嘿,presto,它成功了 您是否有
Register.aspx.designer.cs
文件,其中是否定义了UName
?MySqlCommand与MySqlParameter一起工作,这是防止当前存在SQL注入漏洞所需的参数。@DavidG我想我没有设计器页面,或者如果我有,我无法在解决方案中找到它Explorer@AlexK. 我知道,我的这个项目甚至还没有接近完成哈哈,只是需要一些帮助来解决我目前的问题。通常aspx页面上的控件是在设计器文件中定义的,该文件作为主页的子文件存在,等等
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Register : System.Web.UI.Page
{
MySql.Data.MySqlClient.MySqlConnection conn;
MySql.Data.MySqlClient.MySqlCommand cmd;
String queryStr;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void registerEventMethod(object sender, EventArgs e)
{
registerUser();
}
private void registerUser()
{
String connString = System.Configuration.ConfigurationManager.ConnectionStrings["WebAppConnString"].ToString();
conn = new MySql.Data.MySqlClient.MySqlConnection(connString);
conn.Open();
queryStr = "";
queryStr = "INSERT INTO jamieobr_obecarrentals.users (Forename)" +
"VALUES('" + UName.Text + "')";
cmd = new MySql.Data.MySqlClient.MySqlCommand(queryStr, conn);
cmd.ExecuteReader();
conn.Close();
}
}