Aggiunta di ruoli da una tabella DB
Domanda
Qualcuno mi può expalin come dinamicamente ger il ruolo da una tabella DB invece di difficile codifica nel codice.
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;
Soluzione
Come stai archiviano i tuoi ruoli? Presumo che sia qualcosa sulla falsariga di:
Create Table Roles
(
RoleId int identity(1,1) Not Null,
RoleName varchar(50) not null
)
Perché non basta interrogare il database per andare a prendere l'ID ruolo e quindi utilizzare il risultato della query nel vostro aggiornamento.
Non sarebbe un utente ha selezionato l'qualche ruolo in questo processo? Non puoi afferrare l'ID o RoleName per la loro selezione iniziale?
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow