I don't agree with your definition of "clutter". These solutions allows you
to add new Comment collections whenever needed and have no downsides at all.
Do you get billed by the table count?

   Diego


On Thu, Jun 24, 2010 at 13:27, Ian <[email protected]> wrote:

> Thank you for your suggestions. Am I correct in assuming that under
> both these suggestions I would be required to create intersection/
> linking tables for each Parent type/Comment combination? i.e. in
> example above I would require additional Project_Comments and
> Organisation_Comments tables and so on for each different type of
> parent?
>
> This is ideally something I would like to avoid to limit the 'cluter'
> if possible.
>
> Thanks,
> Ian
>
> On Jun 24, 12:59 am, Diego Mijelshon <[email protected]> wrote:
> > You can use many-to-many relationships (one table per Set), or map
> Comment
> > as a component.
> >
> >    Diego
> >
> > On Wed, Jun 23, 2010 at 19:23, Ian <[email protected]> wrote:
> > > Hi,
> >
> > > I would like to know what the best way to map a collection of child
> > > objects, that may have different parent types.
> >
> > > For example, say I have a generic Comment class, which I want to reuse
> > > to track comments associated with other entities such as Project,
> > > Organisation, Document, etc...:
> >
> > > public class Comment
> > > {
> > >    public string Comment { get; set; }
> > >    public string User { get; set; }
> > >    public DateTime CommentDate { get; set; }
> > >    ....
> > > }
> >
> > > public class Project
> > > {
> > >    ....
> > >    public ISet<Comment> Comments { get; set; }
> > > }
> >
> > > public class Organisation
> > > {
> > >    ....
> > >    public ISet<Comment> Comments { get; set; }
> > > }
> >
> > > If I use a one-to-many relationship for the Comments property in both
> > > Project and Organisation mapping files I will obviously run into the
> > > problem of the Comment records in the DB not knowing whether its
> > > parent/owner is a Project or an Organisation.
> >
> > > There should therefore be something allowing NHibernate to distinguish
> > > what type of parent the comment record belongs to so it can load the
> > > relevant comment records when loading a Project or Organisation.
> >
> > > Is there a good way of supporting this in NHibernate? It seems
> > > Hibernate supports the notion of 'Top-level Collections' (http://
> > >www.xylax.net/hibernate/toplevel.html) to deal with exactly this type
> > > of scenario, but I have found nothing in NHibernate. (It is possible
> > > that it has been depracated in Hibernate as I also found a post
> > > questionning whether this should be supported because it forces you to
> > > break DB referential integrity as you no longer have FKs between child
> > > and various parent records).
> >
> > > Many thanks,
> > > Ian
> >
> > > --
> > > 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]<nhusers%[email protected]>
> <nhusers%[email protected]<nhusers%[email protected]>
> >
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/nhusers?hl=en.
>
> --
> 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]<nhusers%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/nhusers?hl=en.
>
>

-- 
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.

Reply via email to