ASP.NETWebForms注册时为每个用户创建数据库。
创始人
2024-09-19 14:31:00
0次
  1. 在注册用户时,使用 ASP.NET Membership API 建立一个唯一的用户识别 ID。
  2. 使用该 ID 作为数据库名来创建新的数据库。
  3. 将该 ID 存储到注册用户的 User 表格中,以方便在将来进行身份验证和数据库访问。

下面是示例代码:

protected void CreateUser_Click(object sender, EventArgs e) { MembershipCreateStatus status; MembershipUser user = Membership.CreateUser(UsernameTextBox.Text, PasswordTextBox.Text, EmailTextBox.Text, QuestionTextBox.Text, AnswerTextBox.Text, true, out status);

if (user != null && status == MembershipCreateStatus.Success) { // 创建用户数据库 string userId = user.ProviderUserKey.ToString(); string databaseName = String.Format("UserDb_{0}", userId); CreateDatabase(databaseName);

// 存储用户 ID 到 User 表格中
string connectionString = ConfigurationManager.ConnectionStrings["MembershipConnection"].ConnectionString;
using (SqlConnection connection = new SqlConnection(connectionString))
{
    SqlCommand command = new SqlCommand("INSERT INTO Users (Username, UserId) VALUES (@Username, @UserId)", connection);
    command.Parameters.AddWithValue("@Username", user.UserName);
    command.Parameters.AddWithValue("@UserId", userId);
    connection.Open();
    command.ExecuteNonQuery();
}

// 完成用户注册
FormsAuthentication.SetAuthCookie(user.UserName, false);
Response.Redirect("~/User/Profile.aspx");

} }

private void CreateDatabase(string databaseName) { string connectionString = ConfigurationManager.ConnectionStrings["MembershipConnection"].ConnectionString.Replace("master", databaseName); using (SqlConnection connection = new SqlConnection(connectionString)) { string script = @"CREATE DATABASE " + databaseName + @" CONTAINMENT = NONE ON PRIMARY ( NAME = N'" + databaseName + @"', FILENAME = N'" + Server.MapPath("~/App_Data/") + databaseName + ".mdf" + @"', SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ) LOG ON ( NAME = N'" + databaseName + @"_log',

相关内容

热门资讯

科普攻略透视挂!久久大厅辅助透... 科普攻略透视挂!久久大厅辅助透视挂,中至常熟麻将真的有外挂,一贯有人有挂1、金币登录送、破产送、升级...
迎来新发展透视挂!寓教娱乐辅助... 迎来新发展透视挂!寓教娱乐辅助透视挂,天天温岭麻将存在有外挂,切实有挂透明挂1、实时寓教娱乐透视辅助...
技巧知识分享透视挂!哥哥斗地主... 技巧知识分享透视挂!哥哥斗地主辅助透视挂,都城麻将真的有外挂,果然有挂头条1、打开软件启动之后找到中...
热点推荐透视挂!极速暗宝辅助透... 热点推荐透视挂!极速暗宝辅助透视挂,开心廉江麻将是真的有外挂,都是有挂规律1)极速暗宝辅助插件:进一...
大神推荐开挂!随意玩辅助透视挂... 大神推荐开挂!随意玩辅助透视挂,灵飞承德麻将确实有外挂,真是有挂攻略暗藏猫腻,小编详细说明随意玩破解...
我来教大家辅助!云海辅助透视挂... 我来教大家辅助!云海辅助透视挂,原味麻将真的是有外挂,真是有挂攻略;1、在云海插件功能辅助器技巧中,...
据目击者称开挂!大胜跑得快辅助... 据目击者称开挂!大胜跑得快辅助透视挂,新上游真的有外挂,果然有挂方法1、大胜跑得快辅助软件下载优化,...
这一问题亟待解决开挂!追忆辅助... 这一问题亟待解决开挂!追忆辅助透视挂,土豆棋牌真的是有外挂,原来有挂存在1、全新机制【追忆ai辅助工...
每日必看教程辅助!同城游红十辅... 每日必看教程辅助!同城游红十辅助透视挂,中至常熟麻将真的是有外挂,都是有挂功能同城游红十破解侠是真的...
科技新动态透视挂!决胜奕福辅助... 科技新动态透视挂!决胜奕福辅助透视挂,happyworkbook存在有外挂,竟然果真有挂1、该软件可...