FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 3524|回复: 2
打印 上一主题 下一主题

AppBox中,如何在用户管理页面显示用户所属的多个角色?

[复制链接]
跳转到指定楼层
楼主
发表于 2014-8-14 19:27:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
AppBox在显示用户管理页面时,并没有直接在Grid中显示用户所属角色出来,而是在编辑或查看时,才显示出来。
是不是因为EF中用户与角色是一对多的关系,无法直接在Grid中显示用户对应的角色出来?(一个用户可能存在多个角色)
如果想直接在Grid中显示用户对应的角色出来,应该如何实现呢?
求大家帮助。
谢谢。
沙发
 楼主| 发表于 2014-8-19 17:09:21 | 只看该作者
自己研究了一天,得出如下笨办法,请老大指点一下:
前台user.aspx中增加如下代码:
  1. <f:TemplateField Width="200px" HeaderText="角色">
  2.     <ItemTemplate>
  3.           <asp:Label ID="Label3" runat="server" Text='<%# GetRolesName(Eval("Roles")) %>'></asp:Label>
  4.     </ItemTemplate>
复制代码
后台user.aspx.cs:
  1.         /// <summary>
  2.         /// 获取用户角色Name值,在 ASPX 中调用
  3.         /// </summary>
  4.         /// <param name="gender"></param>
  5.         /// <returns></returns>
  6.         protected string GetRolesName(object roles)
  7.         {
  8.             HashSet<Role> r = roles as HashSet<Role>;
  9.             List<string> list = new List<string>();
  10.             for (int i = 0; i < r.Count;i++ )
  11.             {
  12.                 Role rs= r.ToArray()[i];
  13.                 list.Add(rs.Name);
  14.             }
  15.             return  String.Join(",", list);
  16.         }
复制代码




板凳
发表于 2014-8-19 17:26:28 | 只看该作者
Mr.Wu 发表于 2014-8-19 17:09
自己研究了一天,得出如下笨办法,请老大指点一下:
前台user.aspx中增加如下代码:后台user.aspx.cs:

这不是笨方法,就应该是这样的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-23 21:11 , Processed in 0.043674 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表