第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

使用Identity時,如何在沒有注冊頁面的情況下注冊第一個用戶?

使用Identity時,如何在沒有注冊頁面的情況下注冊第一個用戶?

C#
江戶川亂折騰 2022-01-09 10:59:23
您如何在可以管理新數(shù)據(jù)庫的新數(shù)據(jù)庫中創(chuàng)建第一個用戶?例如 Django 有一個命令行實用程序來創(chuàng)建一個超級用戶,它是如何在 ASP.Net Identity 中完成的?
查看完整描述

1 回答

?
qq_笑_17

TA貢獻(xiàn)1818條經(jīng)驗 獲得超7個贊

您必須編寫自己的種子邏輯來播種默認(rèn)用戶和角色。查看 Jeff Fritz 的CoreWiki 存儲庫以獲取示例。


這是相關(guān)的部分。請注意如何多次調(diào)用它而不必?fù)?dān)心創(chuàng)建多個帳戶——這很重要,因為每次運行應(yīng)用程序時都會調(diào)用它。


public static async Task Seed(UserManager<CoreWikiUser> userManager, RoleManager<IdentityRole> roleManager)

{

    var administratorsRole = "Administrator";

    var defaultAdminUsername = "admin@corewiki.com";

    var defaultAdminPassword = "Admin@123";


    var adminRoleExists = await roleManager.RoleExistsAsync(administratorsRole);


    if (!adminRoleExists)

    {

        var role = new IdentityRole(administratorsRole)

        {

            Name = administratorsRole

        };


        var roleResult = await roleManager.CreateAsync(role);

    }


    // If there are no users who are currently an admin, then create a default admin user

    var anyAdminUsers = await userManager.GetUsersInRoleAsync(administratorsRole);


    if (!anyAdminUsers.Any())

    {

        var defaultAdminUserExists = await userManager.FindByEmailAsync(defaultAdminUsername);


        if (defaultAdminUserExists == null)

        {

            var defaultAdminUser = new CoreWikiUser

            {

                UserName = defaultAdminUsername,

                Email = defaultAdminUsername

            };


            var userResult = await userManager.CreateAsync(defaultAdminUser, defaultAdminPassword);


            if (userResult.Succeeded)

            {

                var result = await userManager.AddToRoleAsync(defaultAdminUser, administratorsRole);

            }

        }

    }

}

然后,您可以從 Startup 調(diào)用它,ConfigureServices()也可以在Main()運行虛擬主機(jī)之前直接在您的網(wǎng)絡(luò)主機(jī)中調(diào)用它,如果您的種子方法是async.


如果傳遞了命令行參數(shù),另一種方法是在 Main() 中運行它。例如。dotnet run seed.


查看完整回答
反對 回復(fù) 2022-01-09
  • 1 回答
  • 0 關(guān)注
  • 155 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號