I have implemented some table-per-type inheritance in my data model (basically have a "BaseEntity" type with all the base information for my items and a "Employer" type that inherits from the "BaseEntity" item). Everything appears to be set up correctly and when using the Entities (either via ADO.net Data Services or via Linq to Entities) I can see the Employer type and things appear to be fine. The issue starts when I create a new Employer entity and attempt to save it.
On the context that doesn't appear to be an .AddToEmployer item (only and AddObject or AddToBaseEntity). If I use AddObject("Employer", NewEmployer) I get and error message of: "The EntitySet name 'DataEntities.Employer' could not be found." If I use AddToBaseEntity(NewEmployer) I get an error message of: "Unable to determine a valid ordering for dependent operations. Dependencies may exist due to foreign key constraints, model requirements orstore generated values."
Have I missed a step in setting up the inheritance? Is there some specific way to save objects that are inherited? What am I doing wrong? I assume that the basic issue is that I should have an AddToEmployer, what do I need to do to get that exposed. It seems odd that it is not an option since I can see the Employer type on the client side and can do things such as "var NewEmployer = new Employer()" - which seems to suggest that I can see the Employer type fine.