Thanks, I did found that, and thought I got the same exception, but I didn't. Now I get: "Could not insert NotaRow: Invalid object name NotaRow"
So I guess there is something wrong with my mapping, any idea? David 2009/3/10 Tapio Kulmala <[email protected]> > Hi! > > You are assigning the id only in your default constructor. > > Tapio > > On Tue, Mar 10, 2009 at 1:29 PM, David Perfors <[email protected]>wrote: > >> >> Hello, >> >> I have two classes: one that inherits from Dictionary<> and which add >> some extra funtionality, and one that uses it like this: >> >> public class Distribution<T> : Dictionary<T, Decimal>, IComparable<T> >> { >> } >> >> public class NotaRow >> { >> public NotaRow() >> { >> Children = new Distribution<NotaRow>(); >> Id = Guid.NewGuid(); >> } >> >> public NotaRow(String description, Decimal toPay) >> { >> Description = description; >> ToPay = toPay; >> } >> >> public Guid Id { get; private set; } >> public String Description { get; set; } >> public Decimal ToPay { get; set; } >> >> public Distribution<NotaRow> Children { get; private set; } >> >> public void Distribute(IEnumerable<Decimal> percentages) >> { >> foreach (Decimal percentage in percentages) >> { >> NotaRow row = new NotaRow(Description, ToPay * >> percentage); >> Children.Add(row, percentage); >> } >> } >> } >> >> I try to map the NotaRow class to a database with the following >> mapping: >> <class name="NotaRow"> >> <id name="Id" type="Guid"> >> <generator class="assigned" /> >> </id> >> <property name="Description" /> >> <property name="ToPay" /> >> <map name="Children"> >> <key column="Id" /> >> <index column="NotaRowId" type="Guid" /> >> <element column="Distribution" type="Decimal" /> >> </map> >> </class> >> >> Of course I get an error that the map is not working since I don't use >> any interface and only a custom dictionary type. So for ease I replace >> the Distribution class with the IDictionary<>/Dictionary combination. >> But still NHibernate is complaining that it can't save the >> NotaRow.Children >> "Exception: Could not insert collection... The insert statement >> conflicted with the foreign key Id NotaRowId" >> >> Can anybody give me some advice on how to solve this challange? for me >> these dictionary mappings are the biggest challange this far with >> NHibernate. (mapping to a BindingList was not easy either, but that is >> already solved using custom collection types.) >> >> David. >> >> >> > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nhusers?hl=en -~----------~----~----~----~------~----~------~--~---
