Chave primária em relacionamento HasManyToMany

30 views
Skip to first unread message

fopprado

unread,
Nov 5, 2015, 12:58:00 PM11/5/15
to NHibernate-Br
Quando eu uso o relacionamento HasManyToMany e peço para criar o banco o Nhibernate cria as tabelas corretamente com seus respectivos relacionamentos, mas esta tabela que faz as associações não é gerado a chave primária, alguém sabe resolver isso, eu destaquei o código abaixo.
        
        public UsuarioMap()
        {
            Table("USUARIO");
            Id(u => u.id).GeneratedBy.Sequence("SeqUsuario").Column("ID");
            Map(u => u.email).Unique().Not.Nullable().Length(100);
            Map(u => u.senha).Not.Nullable().Length(15);
            Map(u => u.nome).Length(50);
            HasManyToMany(u => u.permissoes)
                .Table("USUARIO_PERMISSAO")
                .ParentKeyColumn("IDUSUARIO")
                .ChildKeyColumn("IDPERMISSAO")         
                .Cascade.SaveUpdate()
                .LazyLoad();
        }

Foi gerada a seguinte tabela mas sem a chave primária, existe alguma maneira de definir a chave primária no mapeamento?:
CREATE TABLE usuario_permissao
(
  idpermissao integer NOT NULL,
  idusuario integer NOT NULL,
  CONSTRAINT fk36e8cd2881c02994 FOREIGN KEY (idusuario)
      REFERENCES usuario (id) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION,
  CONSTRAINT fk36e8cd28f464dbf6 FOREIGN KEY (idpermissao)
      REFERENCES permissao (id) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE NO ACTION
)
Reply all
Reply to author
Forward
0 new messages