【发布时间】:2017-09-08 18:49:57
【问题描述】:
我在新安装的 Visual Studio 2017 社区中创建了一个 ASP.NET 空网站。我正在尝试复制以下教程所示的步骤:https://youtu.be/5dCAXwhjIYU
我只是在表单上放置了三个文本框以及一个提交按钮。当我双击按钮时,IDE 只是在页面的源视图中突出显示按钮的 HTML。它不会在代码隐藏中创建事件处理程序,如视频所示和预期的那样。
我在后面的代码中为按钮单击手动创建了事件处理程序。当我尝试运行代码时,它告诉我我引用的字段不存在:
错误 CS0103 当前上下文中不存在名称“用户名”
这是我的 HTML 代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Users.aspx.cs" Inherits="Users" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
UserName<br />
<input id="UserName" type="text" /><br />
UserEmail<br />
<input id="UserEmail" type="text" /><br />
UserCampus<br />
<input id="UserCampus" type="text" /><br />
<input id="SaveUser" type="submit" value="submit" /></div>
</form>
</body>
</html>
C# 代码:
public partial class Users : System.Web.UI.Page
{
protected void SaveUser_Click(object sender, EventArgs e)
{
SqlConnection BIGateConnection = new SqlConnection("Data Source=xxxxxxx;Initial Catalog=xxxxxxx;Integrated Security=True");
{
SqlCommand BIGateSQLCmd = new SqlCommand("Insert into [BIGateway].[dbo].[User] (UserName, userEmail, userCampus) VALUES (@userName, @userEmail, @userCampus)", BIGateConnection);
BIGateSQLCmd.Parameters.AddWithValue("@", UserName.Text);
BIGateSQLCmd.Parameters.AddWithValue("@", UserEmail.Text);
BIGateSQLCmd.Parameters.AddWithValue("@", UserCampus.Text);
}
}
}
我到底做错了什么?
【问题讨论】:
-
错误消息中引用了哪一行代码作为错误原因?
-
以下每一行都出现错误:BIGateSQLCmd.Parameters.AddWithValue("@", UserName.Text); BIGateSQLCmd.Parameters.AddWithValue("@", UserEmail.Text); BIGateSQLCmd.Parameters.AddWithValue("@", UserCampus.Text);具体来说,它是在抱怨文本框项 UserName、UserEmail 和 UserCampus。
标签: c# asp.net visual-studio-2017