Eu acho que você quis dizer algo como:
public class PostFile {
public Int32 UserId{ get; set; }
public Int32 PostId { get; set; }
public virtual User? User { get; set; }
public virtual Post? Post { get; set; }
}
O problema original é um aviso de que C#8 introduzido com o ser mais explícita com nulo capaz de tipos de referência. Para uma entidade, a implementação acima não é válida, a menos que estas relações são de fato opcional, o que exigiria seus FK campos (id de utilizador e PostId) para também ser Nulo capaz. Eles provavelmente não opcional.
As principais opções para resolver este problema:
A) desligar o recurso. (Desativar nulo capaz de referências no projeto)
B) Pedir "perdão" para o fato de que estes nunca devem ser nulo, mas não vai ser em um estado válido em construção. (EF para gerenciá-las)
public class PostFile {
public Int32 UserId{ get; set; }
public Int32 PostId { get; set; }
public virtual User User { get; set; } = null!;
public virtual Post Post { get; set; } = null!;
}
Alterar o modelo para marcar as propriedades de navegação como nulo capaz de referências é susceptível de causar todos os tipos de problemas como as migrações ele pode, e vai começar a substituir os não-nulo capaz de FKs com null-capaz queridos. Para marcar estas referências como Nulo e capaz de manter EF feliz:
public class PostFile {
public Int32? UserId{ get; set; }
public Int32? PostId { get; set; }
public virtual User? User { get; set; }
public virtual Post? Post { get; set; }
}
O que é quase certamente não o que você quer no seu domínio, ou mesmo legal se o id de utilizador e PostId são parte de um PK.
Pessoalmente, eu estou assinando esta alteração em C# como uma "terra de minas" MS habilitado inicialmente por padrão, tais como do Lado do Cliente de Avaliação em EF. :)
Eu prevejo muitos-um-StackOverflow perguntas sobre este aviso ou alterações mais recentes, e muitos-um-cliente antigo cheio de "!" perdão marcas mais velhos não-nulo capaz de objetos/referências são transmitidos em código com nulo capaz de verificações de referência.