The sum it up, the problem is that you have a many-to-many relation on
one side, but want it to be a one-to-many on another side.

Using the <join> element to treat CompanyToDocument and Document as
both being part of the Document entity sounds like a way forward.

/Oskar


2012/3/14 jksoft <[email protected]>:
> First off, I am relatively new to NHibernate and so far finding good
> documentation has been a trial.
>
> I am in the processing of using NH to connect to a legacy application which
> also includes some new tables we are adding for this project.  The database
> makes extensive use of join tables to link two entities together.  An
> example would be
>
> Company --> CompanyToDocument <-- Document
> CompanyToDocument
> - companyId
> - documentId
>
> While this is a traditional way of doing Many to Many relationships, it
> really is a One to Many as each Document can only be associated with one
> Company.
>
> I have been racking my brain trying to figure out how to model this in the
> application and use NH to map appropriately.  I really want my Document
> class to either have a "companyId" property or a Company property, not a
> collection of Companies which is the natural mapping for a Many to Many.
>
> One idea I came up with was to put both a Company and a Companies property
> on my Document class so the NH Many to Many association would work.  The
> problem with this is I still can't do a query using my companyId property
> since NH doesn't know anything about it.  One thought I had is to use a Join
> association to map the companyId property.  I suppose another thought would
> be to tweak the query to join back to the Join table.
>
> I wanted to seek out some advice as the pieces just don't seem to be fitting
> in place which makes me think I must be doing something wrong here.
>
> I am open to any and all ideas here as I am stumped on this.
>
> Thanks for any advice,
>
> J
>
> --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/nhusers/-/x8eTnz-LzOUJ.
> 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.

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