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',

相关内容

热门资讯

透视揭露!wepoker辅助脚... 透视揭露!wepoker辅助脚本,wepoker私人局透视-确实是真的有辅助神器(哔哩哔哩)1、下载...
透视科普!wpk透视是真的假的... 透视科普!wpk透视是真的假的,wpk软件是正规的吗-真是存在有辅助软件(哔哩哔哩)1、金币登录送、...
透视解密!wepoker辅助真... 透视解密!wepoker辅助真的假的,We poker辅助器下载-真是真的有辅助神器(哔哩哔哩)亲,...
透视推荐!hhpoker辅助软... 透视推荐!hhpoker辅助软件,hhpoker德州有挂吗-果然是有辅助神器(哔哩哔哩)1、模拟器是...
透视科普!wpk透视是真的假的... 透视科普!wpk透视是真的假的,wpk辅助器是真的吗-真是是真的有辅助攻略(哔哩哔哩)1、有没有辅助...
透视曝光!wepoker可以透... 透视曝光!wepoker可以透视码,wejoker内置辅助-本来有辅助教程(哔哩哔哩)1、该软件可以...
透视揭露!wepoker破解工... 透视揭露!wepoker破解工具,wepoker怎么设置盖牌-本来一直总是有辅助方法(哔哩哔哩)1、...
透视有挂!有哪些免费的wpk作... 透视有挂!有哪些免费的wpk作弊码,wpk辅助器是真的吗-果然一直总是有辅助脚本(哔哩哔哩)1、公共...
透视关于!德扑圈透视挂,德普之... 透视关于!德扑圈透视挂,德普之星透视辅助-好像是真的有辅助软件(哔哩哔哩)脚本下载中分为三种模型:挂...
透视解密!德普辅助器怎么用,德... 透视解密!德普辅助器怎么用,德普之星透视-好像是有辅助app(哔哩哔哩)1、完成辅助器v3.3的残局...