Boa tarde, Pessoal.
Tudo bem?
Não consigo colocar o nome da variável com o mesmo nome da classe , conforme a imagem abaixo:
Alguém poderia me ajudar?
Atenciosamente,
Marcos
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa tarde, Pessoal.
Tudo bem?
Não consigo colocar o nome da variável com o mesmo nome da classe , conforme a imagem abaixo:
Alguém poderia me ajudar?
Atenciosamente,
Marcos
Olá, Marcos! Tudo bem?
No C#, isso não é uma prática recomendada e pode levar a erros de compilação.
No caso do .NET e do Entity Framework, quando você cria uma propriedade com o mesmo nome da classe, o compilador pode ficar confuso e não saber se você está se referindo à classe ou à propriedade.
Por exemplo, se você tem uma classe chamada Cinema e tenta criar uma propriedade chamada Cinema, o compilador não saberá se você está se referindo à classe Cinema ou à propriedade Cinema.
O mesmo vale para o Entity Framework. Quando você está criando relações entre entidades, é importante dar nomes distintos para as propriedades que representam essas relações. Por exemplo, se você tem uma classe Cinema e uma classe Endereco, e quer criar uma relação entre elas, você poderia ter algo assim:
public class Cinema
{
public int Id { get; set; }
public string Nome { get; set; }
public int EnderecoId { get; set; }
public virtual Endereco Endereco { get; set; }
}
Neste caso, EnderecoId é a chave estrangeira que se refere à tabela Endereco, e Endereco é a propriedade de navegação que permite acessar o objeto Endereco associado ao Cinema. Note que os nomes são distintos, o que evita confusão tanto para o compilador quanto para o Entity Framework.
Espero ter ajudado e bons estudos!