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

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

如何獲取某個角色的用戶數(shù)量

如何獲取某個角色的用戶數(shù)量

C#
慕尼黑5688855 2023-08-20 15:00:51
我想獲取分配給某個角色的用戶數(shù)量,如下所示,參見圖片我也檢查了這篇文章,但沒有幫助我。我的角色視圖模型public class RolesViewModel{    public RolesViewModel() { }    public RolesViewModel(ApplicationRole role)    {        Id = role.Id;        RoleName = role.Name;    }    public string Id { get; set; }    [Required]    [Display(Name = "Role Name")]    public string RoleName { get; set; }    public int Count { get; set; }}索引視圖 @model IEnumerable<CMSRPPF.Areas.Admin.Models.RolesViewModel>@{    ViewBag.Title = "Index";    Layout = "~/Areas/Admin/Views/Shared/_LayoutDashboard.cshtml";}<h2>Roles</h2><p> @Html.ActionLink("Add Role", "Create") </p><table class="table">    <tr>        <th>            @Html.DisplayNameFor(model => model.RoleName)        </th>        <th>            @Html.DisplayNameFor(model => model.Count)        </th>        <th></th>    </tr>@foreach (var item in Model) {    <tr>        <td>            @Html.DisplayFor(modelItem => item.RoleName)        </td>        <td>            @Html.DisplayFor(modelItem => item.Count)        </td>        <td>            @Html.ActionLink("Edit", "Edit", new { id = item.Id }) |            @Html.ActionLink("Details", "Details", new { id = item.Id }) |            @Html.ActionLink("Delete", "Delete", new { id = item.Id })        </td>    </tr>}</table>控制器   public ActionResult Index(){    ApplicationDbContext db = new ApplicationDbContext();    List<RolesViewModel> list = new List<RolesViewModel>();    foreach (var role in RoleManager.Roles)        {        var r = new RolesViewModel(role)            {                RoleName = role.Name,                              Count = db.Users.Where(x=>x.Roles.Select(roles => roles.RoleId).Contains("4738a87a-4461-4b54-828b-1c5543f13bb2")).ToList().Count()        };            list.Add(r);        }    return View(list);}到目前為止,我成功地根據(jù)特定角色的 RoleId 對用戶進行了計數(shù),但我不知道如何對所有用戶執(zhí)行此操作。如果有人可以幫助我,我將非常感激。
查看完整描述

1 回答

?
繁華開滿天機

TA貢獻1816條經(jīng)驗 獲得超4個贊

可能有更好的方法來做到這一點,但至少這似乎適用于我的數(shù)據(jù)庫。


var result = from a in db.Roles

             group a.Name by new { a.Id, a.Name } into g

             select new RolesViewModel

             {

                 Id = g.Key.Id,

                 RoleName = g.Key.Name,

                 Count = db.Users.Count(x => x.Roles.Select(k => k.RoleId).Contains(g.Key.Id))

             }.ToList();

現(xiàn)在結(jié)果是 RolesViewModel 的列表,其中屬性 count 表示具有特定角色的用戶數(shù)量??紤]到您可以擁有一個用戶和多個用戶,因此計數(shù)總和可能與用戶總和不同。


查看完整回答
反對 回復 2023-08-20
  • 1 回答
  • 0 關(guān)注
  • 143 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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