If i did this, ive got the joined subclass. But this could not be right. In example the basetype of the User object is not DomainEntityBase<,> it is DomainEntityBase<User,Guid> instead.
James Gregory schrieb: > IsBaseType gets called against every type in your assembly, and it's > supposed to return true only for the actual base types. Looking at your > IsBaseType, you're checking the BaseType, which seems wrong to me. That'll > return true for any type that has a BaseType that matches, not that the type > itself is a base type. > You should just be able to do: > > IsBaseType = > type => type == typeof(DomainEntityBase<,>); > > On Fri, Feb 6, 2009 at 12:30 PM, Steve Wagner <[email protected]> wrote: > >> Ok ive tryed it again, but is dose not work. Here is my code: >> >> AutoPersistenceModel >> .MapEntitiesFromAssemblyOf<User>() >> .Where( t=>t!=typeof(User) ) >> .WithConvention( new Conventions >> { >> IsBaseType = (delegate( Type type ) >> { >> return (type.BaseType != null && >> type.BaseType.IsGenericType && >> type.BaseType.GetGenericTypeDefinition() >> == typeof(DomainEntityBase<,>)); >> }), >> FindIdentity = (info => info.Name == "Id"), >> IdConvention = (part => part.GeneratedBy.GuidComb()) >> } ) >> .Configure( config ); >> >> The IsBaseType action evaluates to true for all object i want (tryed >> it). But the above code dose not creates create any mapping, only if i >> remove the IsBaseType delegate. >> >> Suggestions? >> >> Steve >> >> Steve Wagner schrieb: >>> Hmm ok, have already tryed it this way before but with no success. I >>> will try again. >>> >>> Chris Marisic schrieb: >>>> I believe what you are looking for is this >>>> >>>> .WithConvention(c=>c.IsBaseType = baseType => baseType == typeof >>>> (SomeBaseObject)) >>>> >>>> Add that to your creation of the AutoPersistenceModel at some point >>>> after the .MapEntitiesFromAssemblyOf<>() statement. >>>> >>>> On Feb 5, 3:39 pm, Steve Wagner <[email protected]> wrote: >>>>> Hi, all my Domain objects have a common generic base class which >>>>> provides equality. >>>>> >>>>> If i use AutoPersistenceModel with them, it adds the base class for >> each >>>>> object and then it adds the object itself as joined subclass. How can i >>>>> prevent this behavior? >>>>> >>>>> And second, what is the best way to setup an exception? I have on >> object >>>>> which i have to map with and assigned id generator instead of an >> guidcomp. >>>>> Greets, >>>>> Steve >>>>> > > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
