How to bring about city relation in official?

-5

I have this model

public class Funcionario
  {
        [Key]
        public int id { get; set; }
        [Required(ErrorMessage ="Nome do funcionário é obrigatório", AllowEmptyStrings =false)]
        [Display(Name ="Nome")]
        public String nome { get; set; }
        [Required(ErrorMessage = "Data de Nascimento do funcionário é obrigatório", AllowEmptyStrings = false)]
        [Display(Name = "Data de Nascimento")]
        public DateTime dataNascimento { get; set; }
        [Required(ErrorMessage = "CPF do funcionário é obrigatório", AllowEmptyStrings = false)]
        [Display(Name = "CPF")]
        public long cpf { get; set; }
        [Required(ErrorMessage = "Cidade do funcionário é obrigatório", AllowEmptyStrings = false)]
        [Display(Name = "Cidade")]
        public virtual int cidade { get; set; }
    }

and this one

public class Cidade
    {
        [Key]
        public int id { get; set; }
        [Required(ErrorMessage = "O nome da cidade é obrigatório", AllowEmptyStrings = false)]
        [Display(Name="Nome")]
        public String nome { get; set; }
    }

See that the class Employee receives City and I need to show the name of the city in the Grid and not just the code. So I ask: Should I bring in a city collection? And how is the model City? a virtual int ????

    
asked by anonymous 10.08.2018 / 11:33

1 answer

0

It depends on how you want your relationship, if you are following the line that an Employee is in a City and a City has several employees, the relationship would be as follows:

public class Funcionario
{
    //Essa propriedade representa a chave estrangeira da cidade
    public int IDCidade { get; set; }

    //Essa propriedade representa a entidade da cidade
    [ForeignKey("IDCidade")]
    public virtual Cidade Cidade { get; set; }
}

public class Cidade
{
    public Cidade()
    {
        Funcionarios = new List<Funcionario>();
    }

    //Essa propriedade representa a coleção de funcionários
    public ICollection<Funcionario> Funcionarios { get; set; }
}
    
10.08.2018 / 12:05