Hello All,
I have problems with cascading of children.
I want to map one to many objects Person
and PersonAddress
public class Person
{
public virtual int Id {get; set;}
public virtual string FirstName {get; set;}
public virtual ICollection<PersonAddress> PersonAddress { get; set; }
}
public class PersonAddress
{
public virtual int Id {get; set;}
public virtual int PersonId {get; set;}
...
}
I don't want to have person object property in address. It creates
cyclic references and don't necessary for my application.
mapping file is like following:
<class name="Person" table="Persons" >
<id name="Id" type="Int32" column="PersonId">
<generator class="identity"/>
</id>
<set name="PersonAddress" table="PersonAddress" lazy="true"
fetch="join" outer-join="true" cascade="all-delete-orphan">
<key column="PersonId"></key>
<one-to-many class="PersonAddress"/>
</set>
</class>
<class name="PersonAddress" table="PersonAddress" >
<id name="Id" type="Int32" column="Id">
<generator class="identity"/>
</id>
<property name="PersonId" column="PersonId" type="Int32"/>
<property name="PhoneWork" column="PhoneWork" type="String"/>
</class>
when trying to insert Person with person address I am receiving
exception. Because it tries to insert PersonAddress with invalid id
(default -1, 0, etc).
in samples that I have found it is specified back reference from child
to parent
<many-to-one. In my case I have't parent object and don't want it.
Integer field could not be mapped.
So is there way to do cascade insert without parent object?
--
You received this message because you are subscribed to the Google Groups "nhusers" group.
To post to this group, send email to
nhu...@googlegroups.com.
To unsubscribe from this group, send email to
nhusers+u...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/nhusers?hl=en.