我有一个带有 SQL 数据库的 .Net Core 3.1 应用程序。我使用延迟加载代理从相关表中自动检索数据。基本上,我有一个表,它通过 1 对多或 1 对 1 关系引用其他一些实体。事情是,在大多数情况下,每个关系都可以,每个实体都被加载,我可以读取它的属性(例如名称字段)。
但是,在非常特殊的情况下,这些实体不会加载,尽管关系 Id 存在。它看起来像这样:
模型是这样的:
public partial class Delegation
{
public Guid Id { get; set; }
public int UserFrom { get; set; }
public int UserTo { get; set; }
public virtual User UserFromNavigation { get; set; }
public virtual User UserToNavigation { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在数据库上下文中初始化:
public virtual DbSet<Delegation> Delegations { get; set; }
...
modelBuilder.Entity<Delegation>(entity =>
{
entity.Property(e => e.Id).ValueGeneratedNever();
entity.HasOne(d => …Run Code Online (Sandbox Code Playgroud) .net c# entity-framework entity-framework-core asp.net-core-3.1