Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework .NET Core 3.1-控制台应用程序&x2B;EF-。包括不加载数据_Entity Framework_Asp.net Core_Include - Fatal编程技术网

Entity framework .NET Core 3.1-控制台应用程序&x2B;EF-。包括不加载数据

Entity framework .NET Core 3.1-控制台应用程序&x2B;EF-。包括不加载数据,entity-framework,asp.net-core,include,Entity Framework,Asp.net Core,Include,我通常会找到一种方法来实现这一点,但在这里,包含的数据为空,运行在C#console应用程序中 (虽然相同的代码在我的web应用程序中工作) 联系人和公司均为空,EF不获取相关数据 这就是我创建配置的方式 var builder = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appse

我通常会找到一种方法来实现这一点,但在这里,包含的数据为空,运行在C#console应用程序中

(虽然相同的代码在我的web应用程序中工作

联系人公司均为,EF不获取相关数据

这就是我创建配置的方式

var builder = new ConfigurationBuilder()
                  .SetBasePath(Directory.GetCurrentDirectory())
                  .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
configuration = builder.Build();
谢谢你在这方面的帮助

[编辑]

以下是lead类:

[Table("leads")]
public class Lead
{
    [Required]
    public int? Id { get; set; }

    [Required]
    public Company Company { get; set; }
    [Required]
    public User Contact { get; set; }
}

我认为,要使导航属性正常工作,EF core需要FKs。但不确定这是如何通过网络应用程序工作的。如果可能,请尝试使用FKs,如: [表(“潜在客户”)] 公共级领导 { [必需] 公共int?Id{get;set;}

    public int CompanyId { get; set; }
    public int UserId { get; set; }

    [Required]
    public Company Company { get; set; }
    [Required]
    public User Contact { get; set; }
}

请显示您的潜在客户类别。如果数据出现在web应用程序中,而不是控制台中,那么我将高度怀疑控制台应用程序正在解析的连接字符串。另一种可能性可能取决于DbContext、实体的位置,以及使用EntityTypeConfiguration和类似modelBuilder的任何配置.Configurations.AddFromAssembly,其中web应用程序能够解析实体类型配置的位置,但基于控制台的应用程序不能解析实体类型配置的位置,并且默认为未连接FK的约定。连接字符串正常,基类(Lead)有数据,但没有FK表“但是基于控制台的没有,并且默认为FK未连接的约定”我如何解决?我在web应用程序中使用web控制器类之外的实体时遇到了相同的问题直到相同,数据没有加载至少我获得了id,所以我可以手动获取数据,但这是。。。。
var builder = new ConfigurationBuilder()
                  .SetBasePath(Directory.GetCurrentDirectory())
                  .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
configuration = builder.Build();
[Table("leads")]
public class Lead
{
    [Required]
    public int? Id { get; set; }

    [Required]
    public Company Company { get; set; }
    [Required]
    public User Contact { get; set; }
}
    public int CompanyId { get; set; }
    public int UserId { get; set; }

    [Required]
    public Company Company { get; set; }
    [Required]
    public User Contact { get; set; }
}