Both solutions would work.
If you decide to merge them (you're considering, so it probably makes
sense), you can still have a "MemberType" property that implements a
strategy pattern to handle the behavior of a "regular" Member or a
"Delegate".
You can use
http://unhaddins.googlecode.com/svn/trunk/uNhAddIns/uNhAddIns/UserTypes/GenericWellKnownInstanceType.cs
to
map it to the db without further ado, or you can have a separate MemberType
entity that is mapped as table-per-class-hierarchy.

   Diego


On Sat, Apr 3, 2010 at 13:18, Nieve . <[email protected]> wrote:

> Thanks Diego,
> I thought so. Just out of curiosity, do you know what is the reason behind
> it? How can such a scenario be treated? Would having another
> subclass-subtable be the best way to go, or would eliminating the subclass
> and incorporating it in the parent class would be recommended? Do I miss
> something here?
>
> Thanks again,
> nieve
>
>
> On 3 April 2010 18:09, Diego Mijelshon <[email protected]> wrote:
>
>> You can only have <discriminator> in a class, not in a subclass.
>>
>>    Diego
>>
>>
>> On Sat, Apr 3, 2010 at 12:41, Nieve . <[email protected]> wrote:
>>
>>> Thanks Fabio,
>>>
>>> I tried this, and it didn't work (am using NH 2.1 AFAIR):
>>>
>>>
>>> <?xml version="1.0" encoding="utf-8" ?>
>>>
>>>
>>>
>>>
>>>
>>> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
>>>
>>> <class name="User" table="Users">
>>>   <id name="Id" type="Int32" column="Id">
>>>     <generator class="native"/>
>>>   </id>
>>>   <property name="Amount" column="Amount"/>
>>>
>>>   <subclass name="Member" >
>>>     <join table="Members">
>>>       <key column="Id" />
>>>       <discriminator column="Member_Type" type="string"/>
>>>       <property name="Name" column="Name"/>
>>>           <subclass name="Delegate" discriminator-value="DLGT">
>>>             <property name="SomeProperty" column="SomeProperty"/>
>>>           </subclass>
>>>     </join>
>>>   </subclass>
>>> </class>
>>> </hibernate-mapping>
>>>
>>> What did I do wrong?
>>>
>>> Nieve
>>>
>>>
>>> On 3 April 2010 17:13, Fabio Maulo <[email protected]> wrote:
>>>
>>>> <subclass>
>>>> <join>
>>>>
>>>> http://nhforge.org/doc/nh/en/index.html#inheritance
>>>>
>>>> 2010/4/3 Nieve <[email protected]>
>>>>
>>>>> Hello all,
>>>>> I have a User parent class with 'child' classes like Member,
>>>>> Contributor, Trainer (and so on) which are all mapped with a table per
>>>>> subclass strategy, because all child tables/classes have not-null
>>>>> columns/properties...
>>>>> Now, the Member class has its own child class Delegate with only a
>>>>> couple of additional properties, which is why I would have loved
>>>>> having it mapped using a table per class, only AFAIK the two
>>>>> strategies mix only the other way around, so it can't be done.
>>>>> Anyone has an idea how can this be done? For the time being I put
>>>>> everything in my Member class/table, but I'm not too happy with this
>>>>> solution...
>>>>>
>>>>> --
>>>>> 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.
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Fabio Maulo
>>>>
>>>>  --
>>>> 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]<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]<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