LLBLGen version 5.1.3
Adapter
Platform: .NET 4.6.1
Language: C#
Framework: DTO Class Model
Preset: SD.DTOClasses.ReadOnlyDTOs
SQL Server
I have a entity model with this structure:
Client (ClientId int PK, Name varchar(10))
Project (ProjectId int PK, Name varchar(10), ClientId int FK)
Event(EventId int PK FK) (Event is a subclass of Project with the TargetPerEntity approach, so Event.EventId = Project.ProjectId)
MealType (MealTypeId int PK, Name varchar(10), EventId int FK)
In other words, a MealType has 1 related Event, Event is a subclass of Project, and a Project has a 1 related Client.
I'm creating a Derived Model based on MealType. In the "Derived Element Sub-Element Selection" panel, I see the attributes of MealType, as expected. Under MealType, there is an "Event" subtree, as expected. In that subtree, there are all the fields from both Event and also from Project, which is as expected (since Project is the base class of Event). Also under the "Event" subtree are sub-subtrees for all the entities that are related to Event. However, only the Relationships for "Event" are shown - none of the relationships that come from the "Project" base class are listed. Specifically, the "Client" relationship isn't in the list.
As an experiment, I created a Derived Model based on "Event", and in that case there are subtrees in the designer for the relationships that are defined in "Event" and also those that are defined in "Project", so that's working as expected.
So, it seems that when creating a derived model, if the root entity has a relationship to another entity that's a subclass, then the subclass' base class relationships are missing in the designer.