Lorsque je sauvegarde une entité qui a une relation un-à-plusieurs (HasMany), les registres sont dupliqués dans la base de données.Registres dupliqués nhibernate courants avec mappage un-à-plusieurs
Image de PedidoVenda Tableau:
Image de ItemPedidoVenda Tableau:
je peux voir dans ces images que le problème est que l'identifiant de ItemPedidoVenda est l'une vers l'avant que PedidoVenda id. Mais ceci est sauvegardé automatiquement. Qu'est-ce qui peut être ça?
Mes propriétés dans les classes sont les suivantes:
public class PedidoVenda {
public virtual IList<ItemPedidoVenda> Itens { get; set; }
...
}
public class ItemPedidoVenda {
public virtual PedidoVenda Pedido { get; set; }
...
}
Les cartographes:
PedidoVendaMapper:
HasMany(x => x.Itens)
.KeyColumn("PEDIDO_ID")
.Inverse()
.Cascade.All();
ItemPedidoVendaMapper:
References(x => x.Pedido)
.Column("PEDIDO_ID").Cascade.All();