gpt4 book ai didi

c# - 注册后将用户详细信息输入数据库

转载 作者:太空狗 更新时间:2023-10-29 23:50:15 24 4
gpt4 key购买 nike

我正在尝试在 asp.net 中使用 C# 注册一个用户,然后将他们的详细信息放入我的数据库中。一切似乎都工作正常,但细节不会进入数据库。这是我到目前为止所拥有的:

protected void CreateUser_Click(object sender, EventArgs e)
{
var manager = Context.GetOwinContext().GetUserManager<ApplicationUserManager>();
var signInManager = Context.GetOwinContext().Get<ApplicationSignInManager>();
var user = new ApplicationUser() { UserName = Email.Text, Email = Email.Text };
IdentityResult result = manager.Create(user, Password.Text);

if (result.Succeeded)
{
signInManager.SignIn( user, isPersistent: false, rememberBrowser: false);
IdentityHelper.RedirectToReturnUrl(Request.QueryString["ReturnUrl"], Response);
manager.AddToRole(user.Id, "users");

string connectionString = WebConfigurationManager.ConnectionStrings["MyDatabaseConnection"].ConnectionString;
SqlConnection con = new SqlConnection(connectionString);
string sql;
sql = "INSERT INTO users (username, title, gname, sname, dob, address, suburb, state, postcode, phone, email) VALUES (@UserName, @Title1, @FirstName, @FamilyName, @DateOfBirth, @Address, @Suburb, @State, @Postcode, @Phone, @Email)";
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.AddWithValue("@Username", Email.Text.Trim());
cmd.Parameters.AddWithValue("@Title1", Title1.Text.Trim());
cmd.Parameters.AddWithValue("@FirstName", FirstName.Text.Trim());
cmd.Parameters.AddWithValue("@FamilyName", FamilyName.Text.Trim());
cmd.Parameters.AddWithValue("@DateOfBirth", DateOfBirth.Text.Trim());
cmd.Parameters.AddWithValue("@Address", Address.Text.Trim());
cmd.Parameters.AddWithValue("@Suburb", Suburb.Text.Trim());
cmd.Parameters.AddWithValue("@State", State.Text.Trim());
cmd.Parameters.AddWithValue("@Postcode", Postcode.Text.Trim());
cmd.Parameters.AddWithValue("@Phone", Phone.Text.Trim());
cmd.Parameters.AddWithValue("@Email", Email.Text.Trim());
using (con)
{
con.Open();
int rowCount = cmd.ExecuteNonQuery();
if (rowCount > 0)
{
lblResult.Text = "Success. New User Registered";
}
}
}
else
{
ErrorMessage.Text = result.Errors.FirstOrDefault();
}
}

在 web.config 页面上我有连接字符串:

  <connectionStrings>
<add name="MyDatabaseConnection" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\MyDatabaseConnection.mdf;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>

知道我做错了什么吗?任何帮助将不胜感激。

最佳答案

连接字符串未指定目录 - 即要使用的数据库

例如,我的测试数据库是这样的:

<connectionStrings>
<add name="WindowsFormsApplication3.Properties.Settings.mbcConnectionString"
connectionString="Data Source=(local);Initial Catalog=myDB;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>

数据源是服务器位置,目录是该服务器内的数据库

关于c# - 注册后将用户详细信息输入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32781135/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com