我正在使用身份驗證安全和登錄的ASP.net MVC網站。我或多或少地知道了使用ASP.net Identity的基礎知識,但我遇到的一個問題是,我不知道它如何從連接字符串訪問數據庫。ASP.net身份如何訪問數據庫,這是我應該使用的方式?
爲了澄清我的問題:ASP.net身份如何訪問數據庫,我應該使用相同的方法?
我正在使用身份驗證安全和登錄的ASP.net MVC網站。我或多或少地知道了使用ASP.net Identity的基礎知識,但我遇到的一個問題是,我不知道它如何從連接字符串訪問數據庫。ASP.net身份如何訪問數據庫,這是我應該使用的方式?
爲了澄清我的問題:ASP.net身份如何訪問數據庫,我應該使用相同的方法?
Asp.net身份使用實體框架連接到數據庫,並有它自己的DbContext類,你也許可以內IdentityModel.cs
找到它,它叫ApplicationDbContext
,其使用代碼優先方法創建作爲相關的表到ASP.NET身份,您可以通過向ApplicationUser添加屬性來擴展屬性。如果你想改變它的ConnectionString
,你可以開始添加你的connectionString到它的基地,如下所示:
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public ApplicationDbContext()
: base("YourConnectionString", throwIfV1Schema: false)
{
}
public static ApplicationDbContext Create()
{
return new ApplicationDbContext();
}
}
要訪問數據庫,您可以使用實體框架並使用數據庫第一種方法。
你必須使用命令創建你表賦予
Scaffold-DbContext "Server=;Initial Catalog=dbname
;IntegratedSecurity=False;User ID=;Password=;
ConnectTimeout=15;
Encrypt=False;TrustServerCertificate=True;
ApplicationIntent=ReadWrite;MultiSubnetFailover=False"
Microsoft.EntityFrameworkCore.SqlServer -OutputDir Entities -f
命令會爲你創建上下文對象,你可以使用同一個訪問數據庫。