Solo quiero usar "Administradores" para cada atributo y usar alguna enumeración para eso.Usa el nombre del elemento enum como un parámetro de atributo
¿Pero parece que es imposible o estoy equivocado?
Así que tratar de reemplazar
[RequiresRole("Managers")]
con
[RequiresRole(HardCodedRoles.Managers.ToString())]
...
public enum HardCodedRoles
{
Administrators,
Managers
}
¿Es posible añadir más detalle para que sepamos qué es lo que está tratando de lograr? – Maciej
Simplemente no quiero usar la cadena "AnyRoleName" y quiero poner algún elemento de enum en lugar de él. Pero VS da un error. Un argumento de atributo debe ser una expresión constante, un tipo de expresión o una expresión de creación de matriz de un tipo de parámetro de atributo –
si HardcodedRoles.Managers es una cadena const, esto funcionaría. Por otro lado, si HardcodedRoles es una enumeración, deberá crear una subclase de AuthorizeAttribute e implementar la suya propia, pasando HardcodedRoles y/o HardcodedRoles [] al constructor. – Maciej