I've now checked this going direct to NHibernate without using Active Record and it does the same thing. I think it's purely an NHibernate issue.
Dave. On Jun 4, 6:32 pm, Thi <[email protected]> wrote: > I'd call it a bug mostly because the child classes do implement a > "discriminator" option, the only real problem I see, is that the > discriminator isn't being added on the query when it goes through. > > Thanks for the workaround Markus, I've registered this bug in Donjon > (AR-ISSUE-260). > > Cheers, > Thiago > > On Jun 4, 11:39 am, DaveG <[email protected]> wrote: > > > > > I was about to reply with the same fix using "Where" when I saw you'd > > already done it. > > > I'm not sure it can be called a bug because I don't know if there is > > any foolproof way of working out which objects should be in which list > > if they are all in the same table. I suppose there could be a default > > behaviour that checks the type before adding it to a collection but > > the desired behaviour could vary depending on whether there were other > > types deriving from photo and map which needed to be included, and > > this could get confused if for example map derived from photo. I guess > > in these cases we could say use a single collection and sort it out > > yourself :-) > > > Dave. > > > On Jun 4, 1:15 pm, Markus Zywitza <[email protected]> wrote: > > > > Out of my head, I cannot say whether it is an AR or NH bug. Usage > > > seems ok. Workaround is using the Where-property as shown below. > > > > Please open a Donjon-issue on this. > > > > -Markus > > > > [HasMany(typeof(Photo), Table="Image", ColumnKey="CountryId", > > > Inverse=true, > > > Cascade=ManyRelationCascadeEnum.AllDeleteOrphan, > > > Where="ImageType='Photo'" > > > )] > > > public IList<Photo> PhotoList > > > { > > > get { return m_photoList; } > > > set { m_photoList = value; } > > > } > > > > [HasMany(typeof(Map), Table="Image", ColumnKey="CountryId", > > > Inverse=true, > > > Cascade=ManyRelationCascadeEnum.AllDeleteOrphan, > > > Where="ImageType='Map'" > > > )] > > > public IList<Map> MapList > > > { > > > get { return m_mapList; } > > > set { m_mapList = value; } > > > }- Hide quoted text - > > - Show quoted text - --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Castle Project Users" 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/castle-project-users?hl=en -~----------~----~----~----~------~----~------~--~---
