Я пишу приложение DDD и пытаюсь использовать опцию LazyLoading.
Проблема, с которой я сталкиваюсь, заключается в том, что я могу запустить свое приложение в порядке, если я не использую LazyLoading, но как только я попробуйте использовать UseLazyLoadingProxies (), когда я получаю сущность, я получаю исключение заголовка. Кажется, что он брошен в Castle.DynamicProxies, как я вижу в трассировке стека
Это моя сущность:
public class Technology //: Entity
{
// fields
private readonly IList<SubTechnology> subTechnologies = new List<SubTechnology>();
// properties
public long Id { get; private set; }
public virtual TechnologyName Name { get; private set; }
public virtual IReadOnlyList<SubTechnology> SubTechnologies => subTechnologies.ToList().AsReadOnly();
public Technology() { }
public Technology(TechnologyName technologyName) : this()
{
Name = technologyName;
}
//public void AddSubtechnology(SubTechnology subTech)
//{
//}
и вот как я называю свой код:
public sealed class QuestionController
{
private readonly InterviewsDbContext context;
public QuestionController(InterviewsDbContext context)
{
this.context = context;
}
public string GetTechnology(long technologyId)
{
var tech = context.Technology.Single(t => t.Id == technologyId);
return tech?.Name.Value;
}
}
Для меня это означает, что у меня не реализован мой CTOR, но я пробовал опубликовать c, защищенный, внутренний, и я могу ' Кажется, он не работает.
Единственное, что я могу сказать, это то, что модель Домена не живет в той же сборке, что и мой Контекст ... не уверен, имеет ли это отношение к проблеме ..
Есть идеи? ТНХ