我正在处理的当前程序是用于购物车的注册页面,我已经设置了一个带有表格的 SQL Server,以允许将数据记录为
- 用户名,
- 电子邮件,
- 密码都设置了一个
Nvarchar(max)
。
.NET Framework 的版本是 4.5,我使用的是 VS 2012 并使用 C# 进行编码,服务器是KENSULLIVAN-PC\KSSQL
使用集成 Windows 身份验证的 SQL Server 实例。
到目前为止,我已经能够将注册页面运行到它将保存信息的 cookie,但不会将任何信息发送到 SQL Server 中的表。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
public partial class Account_Register : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
RegisterUser.ContinueDestinationPageUrl = Request.QueryString["ReturnUrl"];
}
//Submit button for user registration information
protected void RegisterUser_CreatedUser(object sender, EventArgs e)
{
int TheUserID = 5000;
SqlConnection conn = new SqlConnection("Server=KENSULLIVAN-PC/KSSQL;Database=GroupProject; Integrated Security=True");
//INSERT command for values to be updated or added to the Database
SqlCommand comm = new SqlCommand("INSERT INTO RegUser (UserName, Email, Password) VALUES (@UserName, @Email, @Password)", conn);
comm.Parameters.Add("@UserName", System.Data.SqlDbType.NVarChar, 100);
comm.Parameters["@UserName"].Value = RegisterUser.UserName;
comm.Parameters.Add("@Email", System.Data.SqlDbType.NVarChar, 100);
comm.Parameters["@Email"].Value = RegisterUser.Email;
comm.Parameters.Add("@Password", System.Data.SqlDbType.NVarChar, 100);
comm.Parameters["@Password"].Value = RegisterUser.Password;
try
{
conn.Open();
comm.ExecuteNonQuery();
Response.Redirect("~/LoggedIn.aspx");
}
catch
{
//ErrorDB.Text = "Error Submitting, Try Again";
}
finally
{
conn.Close();
}
FormsAuthentication.SetAuthCookie(RegisterUser.UserName, false /* createPersistentCookie */);
string continueUrl = RegisterUser.ContinueDestinationPageUrl;
if (String.IsNullOrEmpty(continueUrl))
{
continueUrl = "~/LoggedIn.aspx";
}
Response.Redirect(continueUrl);
}
}
我应该做些什么不同,你注意到什么不是真正推荐的?
谢谢你,肯尼斯