任何人都可以解释我如何从数据库表中动态获取角色,而不是在代码中对其进行硬编码。
ClaimsIdentity outputIdentity = new ClaimsIdentity();
outputIdentity.Claims.Add(new Claim(System.IdentityModel.Claims.ClaimTypes.Name, principal.Identity.Name));
outputIdentity.Claims.Add(new Claim(ClaimTypes.Role, "Manager"));
outputIdentity.Claims.Add(new Claim(ClaimTypes.Country, HttpUtilities.GetProgramIdentifierFromUrl()));
return outputIdentity;
答案 0 :(得分:1)
你是如何存储你的角色的?我认为这有点像:
Create Table Roles
(
RoleId int identity(1,1) Not Null,
RoleName varchar(50) not null
)
为什么不直接查询数据库以获取RoleId,然后在更新中使用查询结果。
用户是否在此过程中的某处选择了角色?你不能为他们的初选选择获取ID或RoleName吗?