我有 EF Core 7 POCO 课程。示例:
public class A
{
... obmited unrelated codes
public long CustomerID { get; set; }
public virtual Customer MyCustomer { get; set; }
}
MyCustomer
属性偶尔会延迟加载。如果已加载,我将显示客户的详细信息。如果没有,就忽略吧。
我的问题是,如何在不出现
LazyLoadOnDisposedContextWarning
的情况下检查该值是否已加载?当我收到这个物体时,DbContext
早已消失。
NavigationEntry.IsLoaded 是您理想中想要的,但只有当您仍然拥有 DbContext 时它才有效。否则,您必须完全禁用警告。
如果你处于需要做这种事情的情况,我首先会重新考虑导致你遇到这个问题的设计是否正确。