Yeah but you didn't plug my blog... ;)

On Thu, Jul 16, 2009 at 10:15 PM, Hudson Akridge
<[email protected]>wrote:

> That's what I said! =p (article title pending...)
>
>
> On Thu, Jul 16, 2009 at 4:12 PM, James Gregory <[email protected]>wrote:
>
>> I think you mean a many to one, 
>> sir<http://blog.jagregory.com/2009/01/27/i-think-you-mean-a-many-to-one-sir/>
>>  :)
>>
>> On Thu, Jul 16, 2009 at 9:56 PM, Hudson Akridge <[email protected]
>> > wrote:
>>
>>> What you may be looking to do here is use two one-to-many associations on
>>>> both sides
>>>
>>>
>>> Erm, that should read "two many-to-one associations" (.References() in
>>> FNH), apologies for the confusion.
>>>
>>> On Thu, Jul 16, 2009 at 3:55 PM, Hudson Akridge <
>>> [email protected]> wrote:
>>>
>>>> It's been a while since I've done one-to-one's, but I'll give this a try
>>>> :)
>>>> I believe you need to have a "constrained" setting for one of the sides
>>>> to start with, this denotes which side and how the one-to-one saves.
>>>>
>>>> I'm actually not entirely sure that this mapping is legal for
>>>> one-to-one, because as far as I'm aware, and have implemented in the past,
>>>> the primary key's of both entities must be identical, and so you map the
>>>> "child" id generation to be Foreign, and set it to the property of the
>>>> one-to-one association. But with a subclass, by definition, they can't be,
>>>> since they exist in the same table structure, and will collide ID's.
>>>>
>>>> What you may be looking to do here is use two one-to-many associations
>>>> on both sides.
>>>>
>>>> I don't know what the design is you're shooting for, but one other red
>>>> flag for me is two subclasses having essentially a single entity reference
>>>> to the other. Typically this means those two classes can be merged, and you
>>>> might just want to persist an enum that changes what type of Activity a 
>>>> user
>>>> is dealing with.
>>>>
>>>> On Thu, Jul 16, 2009 at 3:30 PM, Berryl Hesh <[email protected]>wrote:
>>>>
>>>>>
>>>>> Hello:
>>>>>
>>>>> I was expecting the HasOne relationship that is part of my inheritance
>>>>> mapping to not let me save a ProjectActivity unless it's Project
>>>>> attribute exists in the db (Project is a mapped Entity also). Is there
>>>>> an option I can use to enforce this?
>>>>>
>>>>> Thanks!
>>>>> B
>>>>>
>>>>> Domain inheritance hierarchy
>>>>> -------------------------------------------------
>>>>> public abstract class Activity : Entity    {      ...  }
>>>>>
>>>>> public class ProjectActivity : Activity    {
>>>>>        public virtual Project Project { get; private set; }
>>>>>  }
>>>>>
>>>>> public class AccountActivity : Activity    {
>>>>>        public virtual Account Account{ get; private set; }
>>>>>  }
>>>>>
>>>>> Mapping
>>>>> -----------------------
>>>>> public class ActivityMap : IAutoMappingOverride<Activity>
>>>>>    {
>>>>>        public void Override(AutoMap<Activity> mapping)
>>>>>        {
>>>>>           ..........
>>>>>
>>>>>            mapping.DiscriminateSubClassesOnColumn("ActivityType")
>>>>>                .SubClass<ProjectActivity>("P",
>>>>>                    x => x.HasOne(y => y.Project)
>>>>>                        .Cascade.None()
>>>>>                        .FetchType.Join())
>>>>>
>>>>>                .SubClass<AccountActivity>("A",
>>>>>                    x => x.HasOne(y => y.Account).Cascade.SaveUpdate
>>>>> ().FetchType.Join())
>>>>>        }
>>>>>    }
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> - Hudson
>>>> http://www.bestguesstheory.com
>>>> http://twitter.com/HudsonAkridge
>>>>
>>>
>>>
>>>
>>> --
>>> - Hudson
>>> http://www.bestguesstheory.com
>>> http://twitter.com/HudsonAkridge
>>>
>>>
>>>
>>
>>
>>
>
>
> --
> - Hudson
> http://www.bestguesstheory.com
> http://twitter.com/HudsonAkridge
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Fluent NHibernate" 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/fluent-nhibernate?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to