Свойства навигации EF не загружаются, если они имеют значение по умолчанию - PullRequest
0 голосов
/ 18 июня 2020

У меня есть класс Transaction в подходе «сначала код» со свойством навигации Account.

public class Transaction 
{
    [Key]
    public int Id { get; set; }
    public int AccountId { get; set; }
    public virtual Account Account { get; set; }
    public Transaction() 
    {
        // Account = new Account(GlobalValues.AppData.DefaultAccount); // this causes the problem!!!
    }
}

Если в конструкторе по умолчанию Transaction Account не задано, то

var toDisplay = db.Transactions.Take(10).ToList(); 

читает Account правильно. Если в конструкторе по умолчанию установлено Account, то кажется, что Account не читается, но используется значение, установленное в конструкторе. Я попытался выполнить загрузку, но это не помогло.

var toDisplay3 = db.Transactions.Take(10).Include(e => e.Account).ToList();

Мой текущий обходной путь - установить только AccountId в конструкторе, но это вызывает проблемы в другом месте.

...