У меня есть BaseScript, в скрипте есть GetAll, который не загружает связанные объекты.Загрузка связанных объектов в BaseScript (DbContext)
В DbContext отключен LazyLodingEnabled (false).
Следуя коду, чтобы понять мою проблему. В этом примере он не загружает пользователя и messageViews, когда я хочу получать сообщения по языку.
BaseScript
public abstract class BaseScript<TEntity> where TEntity : EntityBase
{
public virtual IEnumerable<TEntity> GetAll()
{
using (EntityDbContext ctx = new EntityDbContext())
{
return ctx.Set<TEntity>().ToList();
}
}
}
MessageScript
public class MessageScript : BaseScript<Message>
{
public IEnumerable<Message> GetAllByLanguagePublic(string language)
{
return this.GetAllPublic().Where(x => x.Language == language).ToList();
}
}
объект Message: "Почему не User
и MessageViews
загружены"
public class Message : EntityBase
{
public string Text { get; set; }
public string Language { get; set; }
public virtual User User { get; set; }
public Guid UserId { get; set; }
public virtual ICollection<MessageView> MessageViews { get; set; }
}