Boa tarde. Pessoal estou tentando por Code-First criar um table M:N(usuarios e acoes, q geraria a table permissao que só tem a chave primaria das outras duas). Mas nao estou conseguindo ja tentei de varias formas.

Nas classes

Usuario tenho a propriedade

public virtual IEnumerable<Acao> Acoes { get; set; }

Acao tenho

public virtual IEnumerable<Usuario> Usuarios { get; set; }

Nas configurações tenho

Usuario: HasRequired(u => u.Acoes).WithMany().HasForeignKey(u => u.Acoes);

e

Acao: HasRequired(u => u.Usuarios).WithMany().HasForeignKey(u => u.Usuarios);

Quando vou gerar o banco da o seguinte erro:

The navigation property 'Usuarios' is not a declared property on type 'Acao'. Verify that it has not been explicitly excluded from the model and that it is a valid navigation property.

Exibições: 89

As respostas para este tópico estão encerradas.

Respostas a este tópico

 public virtual ICollection<Usuario> Usuarios { get; set; }

 public virtual ICollection<Acao> Acoes { get; set; 

 

UsuarioMap:

HasMany(u=>u.Acoes)

.WithMany(a=>a.Usuarios)

.Map(a=>a.ToTable("NomeDaTableRelacionamento")

   .MapLeftKey("UsuarioId")

  .MapRightKey("AcaoId"));

Isso mesmo.. Obg Gustavo

Gustavo Gonçalves disse:

 public virtual ICollection<Usuario> Usuarios { get; set; }

 public virtual ICollection<Acao> Acoes { get; set; 

 

UsuarioMap:

HasMany(u=>u.Acoes)

.WithMany(a=>a.Usuarios)

.Map(a=>a.ToTable("NomeDaTableRelacionamento")

   .MapLeftKey("UsuarioId")

  .MapRightKey("AcaoId"));

RSS

© 2018   Criado por Ramon Durães.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço