Я создал объекты домена POCO, которые отображаются на объекты в модели домена объекта.
До сих пор все работало нормально, когда мне приходилось работать с отношениями «многие ко многим».
Допустим, у меня есть три стола.
- Блог
- BlogTag
- Метка
Вы можете видеть, что Блоги и Теги имеют много ко многим с таблицей мостов, BlogTag, который содержит внешний ключ для обеих таблиц.
У меня также есть соответствующие доменные модели:
- Блоги
- BlogsTags
- Теги
Теперь я выбираю список блогов и пытаюсь получить доступ к определенному тегу из блога.
myBlog.BlogsTags [0] .tag
BlogTags [0] .TagForeignKey заполнен, но BlogTags [0] .Tag равен null !!
У меня также включена функция LazyLoading.
Что я мог делать не так?
Спасибо.
Хорошо. Вот некоторый исходный код.
мой контекстный класс
public class MyContext : ObjectContext
{
public MyContext() : base(Utility.GetConnectionString(...), "containerName")
{
Blogs = CreateObjectSet<Blog>();
BlogsTags = CreateObjectSet<BlogTag>();
Tags = CreateObjectSet<Tags>();
base.ContextOptions.LazyLoadingEnabled = true;
}
public ObjectSet<Blog> Blogs { get; private set; }
public ObjectSet<BlogTag> BlogsTags { get; private set; }
public ObjectSet<Tags> Tags { get; private set; }
}
и у моих классов poco просто есть список связанных объектов с ключевым словом virtual.