public ActionResult RoleOperations(string id) { var roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(new IdentityDbContext(Platform.DAAS.OData.Security.ModuleConfiguration.DefaultIdentityStoreConnectionName))); var role = roleManager.FindById(id); if (role != null) { RoleOperationViewModel viewModel = new RoleOperationViewModel() { ID = role.Id, Name = role.Name, Operations = new OperationListViewModel() { DataTypes = new List <string>() }, RoleOperations = new List <OperationViewModel>() }; using (AuthEntityModelContainer context = new AuthEntityModelContainer()) { var operations = context.Operations; if (operations != null) { foreach (var operation in operations.ToArray()) { viewModel.Operations.Add(new OperationViewModel() { DataType = operation.DataType, ID = operation.Id, Name = operation.Name }); if (!viewModel.Operations.DataTypes.Contains(operation.DataType)) { viewModel.Operations.DataTypes.Add(operation.DataType); } } } var roleOps = context.RoleOperations.Where(ro => ro.RoleId.ToLower() == role.Id.ToLower()); if (roleOps != null) { foreach (var roleOp in roleOps.ToArray()) { viewModel.RoleOperations.Add(new OperationViewModel() { DataType = roleOp.Operation.DataType, ID = roleOp.OperationId, Name = roleOp.Operation.Name }); } } } return(View(viewModel)); } return(View()); }
public RoleOperationView(RoleOperationViewModel viewModel) { InitializeComponent(); this.DataContext = viewModel; }