Câu hỏi phỏng vấn Entity Framework
Câu hỏi

Giải thích làm thế nào bạn có thể tải các thực thể liên quan trong EF?

Câu trả lời

Trong Entity Framework (EF), có ba phương pháp chính để tải các thực thể liên quan: Eager Loading, Lazy Loading và Explicit Loading.

Eager Loading

Eager Loading là quá trình tải tất cả các thực thể liên quan cùng một lúc với thực thể chính. Điều này được thực hiện thông qua phương thức Include. Khi sử dụng Eager Loading, một câu lệnh truy vấn duy nhất sẽ được thực thi và tải tất cả dữ liệu cần thiết từ cơ sở dữ liệu. Điều này thường được sử dụng khi bạn biết trước rằng bạn sẽ cần truy cập đến các thực thể liên quan ngay sau khi truy vấn thực thể chính.

Lazy Loading

Lazy Loading là quá trình tải dữ liệu liên quan một cách tự động khi bạn truy cập vào thuộc tính navigation của thực thể. Để sử dụng Lazy Loading, bạn cần phải đảm bảo rằng các thuộc tính navigation được đánh dấu là virtual và EF sẽ tự động tạo proxy cho các thực thể để theo dõi việc truy cập thuộc tính và tải dữ liệu khi cần thiết. Tuy nhiên, Lazy Loading có thể dẫn đến vấn đề N+1 query, nơi mỗi lần truy cập thuộc tính navigation sẽ tạo ra một truy vấn cơ sở dữ liệu riêng biệt.

Exp...

middle

middle

Gợi ý câu hỏi phỏng vấn

expert

Sự khác biệt giữa .SaveChanges() và .AcceptAllChanges() là gì?

junior

Những lợi ích của việc sử dụng EF là gì?

middle

Bạn có thể giải thích sự khác biệt giữa khóa lạc quan và khóa bi quan không?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào