Olá, Leonardo
O motivo pelo qual o professor declara os tipos vindos do Identity com um <int>
é para indicar que o tipo de identificador usado para representar os papéis (roles) é um int
. No exemplo que você citou, o RoleManager<IdentityRole<int>>
indica que estamos usando um identificador do tipo int
para representar as roles.
Essa escolha do tipo de identificador pode variar de acordo com as necessidades do seu projeto. Além do int
, outros tipos que poderiam ser usados no lugar são string
, Guid
, entre outros. A escolha do tipo de identificador depende do contexto e dos requisitos do seu projeto.
Por exemplo, se você estiver trabalhando com um sistema em que as roles são pré-definidas e não vão mudar com frequência, pode ser mais conveniente usar um identificador do tipo int
. Por outro lado, se você estiver trabalhando com um sistema em que as roles são criadas dinamicamente e podem ter nomes complexos, pode ser mais conveniente usar um identificador do tipo string
.
Em resumo, o tipo <int>
após o IdentityRole
indica o tipo de identificador usado para representar as roles. Essa escolha pode variar de acordo com as necessidades do seu projeto.
Espero ter ajudado e bons estudos!