亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 Entity Framework Core 將數據關聯到默認 ASP.NET UAM 用戶

使用 Entity Framework Core 將數據關聯到默認 ASP.NET UAM 用戶

C#
慕神8447489 2022-10-15 15:06:24
嘗試創建一個簡單的 MVC 應用程序,該應用程序具有基本的用戶帳戶管理和社交帳戶注冊。創建具有個人身份驗證的 ASP.NET Core 2.2 應用程序,通過 NuGet(sqlserver 和工具)添加 EF 核心。我之前已經構建了一些基本的 ASP.NET MVC 應用程序和其他語言的 MVC 應用程序。我讓 Facebook 登錄按照本教程工作?,F在我迷路了。有一個“數據”目錄,里面已經有一堆代碼,還有普通的 MVC 目錄。但是,我沒有看到與我在啟動應用程序時可以清楚地訪問的帳戶管理相關的任何頁面或操作相關的 MVC 文件,包括/Identity/Account/Login、/Identity/Account/Manage、/Identity/Account/Manage/SetPassword等。雖然在幾分鐘內啟動并運行所有這些功能很酷,但我已經處于不知道它如何工作或為什么工作的劣勢。搜索任何我希望對此有所了解的東西都會給我提供技術文檔,讓我頭暈目眩并提供零啟示。我想要一個與每個用戶相關聯的數據集(“書籍”)的集合。一個用戶對多本書。鑒于用戶(帳戶?)模型不在 MVC 應用程序的 Models 目錄中,我認為不應在此處添加它。如果是,我不知道如何創建與用戶的關聯。這就是我在一個名為ApplicationDbContextModelSnapshot.csnamespace Bookshelf.Data.Migrations    [DbContext(typeof(ApplicationDbContext))]    partial class ApplicationDbContextModelSnapshot : ModelSnapshot    {        protected override void BuildModel(ModelBuilder modelBuilder)        {        ...        modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRole", b =>            {                b.Property<string>("Id")                    .ValueGeneratedOnAdd();                b.Property<string>("ConcurrencyStamp")                    .IsConcurrencyToken();                b.Property<string>("Name")                    .HasMaxLength(256);                b.Property<string>("NormalizedName")                    .HasMaxLength(256);                b.HasKey("Id");                b.HasIndex("NormalizedName")                    .IsUnique()                    .HasName("RoleNameIndex")                    .HasFilter("[NormalizedName] IS NOT NULL");                b.ToTable("AspNetRoles");            });...等等,看起來相當可讀,但與我迄今為止看到的任何教程都不匹配。TL;博士:我在哪里/如何正確創建新模型?在 Models 目錄中是這樣的(我習慣了)還是已經過時了?無論哪種方式,在給定 ASP.NET Core 2.2 的內置用戶帳戶管理的情況下,如何正確地將數據與用戶關聯?
查看完整描述

1 回答

?
慕容森

TA貢獻1853條經驗 獲得超18個贊

有一個“數據”目錄,里面已經有一堆代碼,還有普通的 MVC 目錄。但是,我沒有看到與我在啟動應用程序時可以清楚訪問的任何與帳戶管理相關的頁面或操作相關的 MVC 文件,包括 /Identity/Account/Login、/Identity/Account/Manage、 /身份/帳戶/管理/設置密碼等

這是因為從 ASP.NET Core 2.1 開始,身份作為Razor 類庫與 ASP.NET Core 項目模板一起提供。如果您想查看那些與身份相關的代碼并進行自定義,那么您必須在項目中使用腳手架身份

以下是有關此的更多詳細信息:ASP.NET Core 項目中的腳手架標識

此外,如果您需要 MVC 格式的 ASP.NET Core 標識,那么這里是我的 GitHub存儲庫,其中 Razor 頁面標識已在 ASP.NET Core 2.2 中轉換為 MVC。


查看完整回答
反對 回復 2022-10-15
  • 1 回答
  • 0 關注
  • 116 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號