Olá, Bruno
Entendo sua preocupação em relação à versão do Entity Framework Core utilizada no curso. De fato, o curso foi gravado com a versão EF2 e atualmente temos disponível o EF6. No entanto, é importante ressaltar que mesmo com o lançamento de novas versões, muitos conceitos e funcionalidades continuam válidos e relevantes.
No exercício que você mencionou, é afirmado que não é possível adicionar índices por meio de anotações, sendo esse um recurso já adicionado no EF5. Porém, é importante lembrar que as anotações são apenas uma forma de configurar o EF Core, e existem outras maneiras de realizar essa configuração, como o uso da Fluent API.
No contexto da atividade em que você está com dúvida, as sentenças são as seguintes:
I - O EF Core cria um índice para cada chave estrangeira encontrada.
II - O nome estabelecido para os índices encontrados no modelo de dados é definido usando a convenção idx_<classe que contém o índice>_<nome da coluna>
.
III - O nome do índice só é determinado pelo EF Core se o desenvolvedor não chamar o método HasName()
via Fluent API.
IV - Não é possível configurar índices usando anotações.
A alternativa correta é a C) As alternativas (I), (III) e (IV) estão corretas. Ou seja, o EF Core cria um índice para cada chave estrangeira encontrada, o nome do índice é definido usando a convenção idx_<classe que contém o índice>_<nome da coluna>
, e é possível configurar índices usando a Fluent API, mas não é possível configurá-los usando anotações.
Espero ter esclarecido sua dúvida! Se tiver mais alguma pergunta, é só me dizer.
Espero ter ajudado e bons estudos!