Asp.net
使用 ASP.NET 標識在表中添加列
我使用身份框架製作了一個帶有 ASP.NET MVC 的項目。它創建了一個新表
AspNetUsers,但我想在該表中添加列,如生日、個人資料圖片等……我該怎麼做?我可以在我的 SQL Server Management Studio 中執行以下查詢嗎?
ALTER TABLE AspNetUsers ADD ProfilePicture NVARCHAR(100); ALTER TABLE AspNetUsers ADD BirthDay DATE;還是更複雜?我不能使用身份框架,所以我必須使用 ADO.NET 和 .NET 框架 4。
我找到了!@James 向我推薦了一篇有效的文章。
腳步:
- 在控制台管理器中輸入以下程式碼:
Enable-Migrations來源:blogs.msdn.com 2. 在類中
ApplicationUser添加您想要的屬性。public DateTime? Birthdate { get; set; }
- 在控制台管理器中輸入以下程式碼:
Add-Migration "Birthdate"
- 使用以下程式碼更新數據庫後:
Update-Database**結果:**一個新列被添加到數據庫中,名稱為“Birthdate”,類型
datetime可以為空。
假設您要添加一個名為“FirstName”的新列:
**第 1 步:**模型/IdentityModels.cs
將以下程式碼添加到“ApplicationUser”類中:
public string FirstName { get; set; }第 2 步: 模型/AccountViewModels.cs
將以下程式碼添加到“RegisterViewModel”類:
public string FirstName { get; set; }第 3 步: 查看/Register.cshtml
將 FirstName 輸入文本框添加到視圖中:
<div class="form-group"> @Html.LabelFor(m => m.FirstName, new { @class = "col-md-2 control-label" }) <div class="col-md-10"> @Html.TextBoxFor(m => m.FirstName, new { @class = "form-control" }) </div> </div>第4步 :
轉到工具 > NuGet 管理器 > 包管理器控制台
步驟 A:鍵入“Enable-Migrations”並按 Enter
步驟 B:鍵入“Add-Migration “FirstName”並按 Enter
步驟 C:鍵入“Update-Database”並按 Enter
即
PM> Enable-Migrations PM> Add-Migration "FirstName" PM> Update-Database第 5 步: 控制器/AccountController.cs
轉到註冊操作並將“FirstName = model.FirstName”添加到 ApplicationUser 即
var user = new ApplicationUser { UserName = model.Email, Email = model.Email, FirstName = model.FirstName}
