Если вы создаете ObjectSet
для базового типа (то есть Post
), вы не можете создать его и для производных типов, потому что вы можете извлечь экземпляры всех типов в иерархии наследования из этого ObjectSet
.
т.е. ctx.Posts.OfType<BlogEntry>()
вернет BlogEntry (s).
Таким образом, ответ состоит в том, чтобы просто удалить два других набора.
Если вам нужно добавить, например, вы можете сделать это:
ctx.Posts.AddObject(new BlogEntry {....});
вообще никаких проблем.
Чтобы упростить написание запросов, вы, возможно, могли бы добавить пару свойств в свой ObjectContext, которые выглядят так:
public ObjectQuery<BlogEntity> Blogs{
get{
return ctx.Posts.OfType<BlogEntry>() as ObjectQuery<BlogEntry>;
}
}
и то же самое для комментариев.
Надеюсь, это поможет
Alex