Tôi gặp sự cố khi thuộc tính của đối tượng mới được thêm vào không được tải xuống, nếu được yêu cầu ngay sau khi thêm đối tượng.Thực thể mã đầu tiên không tải thuộc tính lười biếng
Ví dụ:
Tôi có một thực thể người dùng với một tài sản JobRole ảo:
public class User
{
public int Id { get; set; }
public virtual JobRole JobRole { get; set; }
public int JobRoleId { get; set; }
public string Name { get; set; }
}
sau đó tôi thêm một tài khoản mới:
public User Add(User user)
{
var addedUser = _myContext.Users.Add(user);
myContext.SaveChanges();
return addedUser;
}
Tham chiếu trở lại cho người dùng mới sau đó được chuyển đến một khung nhìn Razor, nơi nó cố gắng hiển thị JobRole (ví dụ như JobRole.Name). Tại thời điểm Người dùng được chuyển đến Chế độ xem, nó có:
- JobRoleId đặt chính xác thành giá trị số nguyên.
- JobRole = null
Sau đó tôi mong chờ JobRole để được lười biếng-nạp, khi được sử dụng bởi các View, nhưng nó không phải và kết quả là trong một ngoại lệ null-tham khảo.
Hành vi này có được mong đợi hay không hoặc có cách nào để có được các thực thể mới được thêm vào để tải xuống các thuộc tính của chúng không?
Cảm ơn trước vì bất kỳ ý tưởng nào.
Môi trường: Sử dụng khung pháp nhân 4.2 mã đầu tiên. Đã bật tải Lười.
Tôi có vấn đề này và câu trả lời là đúng. Tuy nhiên, mã của tôi sử dụng cơ sở dữ liệu đầu tiên. Vì vậy, tôi đề nghị bạn chỉnh sửa tiêu đề để tìm kiếm trong tương lai có thể hạ cánh tại đây dễ dàng hơn. –