问题标签 [ef-core-2.2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 缺少列的 Entity Framework Core 默认值
我有一个 sqlite 数据库,它有一些表和列,如下所示:
我的项目中的对象如下所示:
这可能会发生,因为我的程序需要处理不同版本的数据库。EF Core 现在尝试访问Additional
数据库的字段,但返回找不到该字段的错误。(预期行为)
现在我的问题是,是否有办法忽略此错误并返回属性的默认值?
我可以通过使属性为空来绕过错误。但我不想.HasValue()
在访问之前检查每个属性。因为真正的数据库在表中有 50+ 列。
entity-framework-core - 经典导航属性与聚合中的自有类型
发布后EF Core 2.2
,现在可以同时拥有拥有类型的单一值和集合值。
与经典导航属性相比,拥有类型始终包含在实体中,因此拥有类型看起来像是描述聚合形状的一种自然方式。
是否有任何与 DDD 相关的用例,其中经典导航属性仍然更好?
更新 1
在 2.2 之前,我能够调用modelBuilder.Entity<OwnedType>
和配置备用密钥。
现在2.2
我开始在迁移过程中遇到错误:primary key is not defined for the entity
. 但是,在方法中ReferenceOwnershipBuilder
作为参数传递给buildAction
lambda 的类OwnsOne
不包含HasAlternateKey
. 这是目前已知的限制。
更新 2
当前拥有的类型不支持继承。这对于某些用例可能很关键。
entity-framework-core - 如何调试包管理器控制台执行的 ef 核心代码?
我需要调试PM> add-migration <name>
你是怎么做的?
背景:它会引发以下错误。我要找谁的原因
asp.net-core - 递归地从具有 ef-core 的自引用多对多对象中获取所有子对象
我在 Stackoverflow 上的第一篇文章。所以如果我在这里不明白什么,请提前道歉:)
我有一个名为 ElementEntity 的抽象类。在这个类中,我有 2 个多对多关系,ChildRelations 和 ParentRelations。
我需要一个包含所有孩子和孙辈等的 id 的列表。形成一个特定的 ElementEntity。
我们不知道这棵树有多深,例如:Context.Hospitals().Include(b => b.ChildRelations).ThenInclude(c => c.child).ThenInclude etc.. 不是一个选项。( Hospital 是派生的 ElementEntity )
什么是最好的(最便宜的)方法?
作为指示,某个元素可能有数十万个后代对象。
可能的修复:
酒店现在包括儿童、孙子、曾孙等等。等等。
entity-framework - 如何使用空间数据使用 EF Core 2.2 进行迁移?
我正在尝试在 Entity Framework Core 2.2 中进行迁移,但我遇到了一些奇怪的错误。它应该可以工作,因为文档没有说明任何关于映射代码的内容。
这个命令:
dotnet ef 迁移添加 InitialCreate
导致此错误:
属性“Point.Boundary”属于接口类型(“IGeometry”)。如果它是导航属性,则通过将其转换为映射实体类型手动配置此属性的关系,否则使用“OnModelCreating”中的 NotMappedAttribute 或“EntityTypeBuilder.Ignore”忽略该属性。
我不明白。我有一个实体、一个上下文和所有必需的依赖项,包括 EF Core 2.2 。我该如何解决?
项目文件:
模型文件
上下文文件
c# - 'System.Nullable`1[System.Int32]' 类型的表达式不能用于'System.Int32' 类型的构造函数参数\r\n参数名称: arguments[0]
我正在执行下面的代码,EFCore 抛出
类型的表达式
System.Nullable'1[System.Int32]
不能用于类型的构造函数参数System.Int32'\r\nParameter name: arguments[0]
Person 要么有配置文件,要么没有配置文件,因此 Person 上的 Profile 属性是可选的。
c# - 是否可以在单独的类中移动层次结构的流畅配置?
我有一个层次结构,我想在一个类中配置它。可能吗?
目前我有接口N
的实现IEntityTypeConfiguration<>
——层次结构中的每个实体一个。
c# - 禁用导航属性 ef-core2.2 的命名约定
我试图在我的域对象中使用身份类,但是当我想为创建数据库创建迁移时,ef core 2.2 告诉我:
System.Reflection.TargetInvocationException:调用的目标已引发异常。---> System.InvalidOperationException:“仓库”不能用作实体类型“存在”的属性,因为它被配置为导航。
我的 dbcontext 是
我的存在课是
和我的warehouseId 类
我认为问题是我使用“entityId”模式来命名我的身份类,所以我想知道是否存在某种方式告诉 ef core“不要尝试在此处使用导航属性对流”
sql-server - Microsoft SQL Server 外键依赖项使用 sp_MSdependencies 显示,但未在 sys.foreign_keys 中列出
我有一个表,当我单击查看依赖项时,它显示的相关表比运行以下 T-SQL 时少
三个不同的表存在三个依赖项,它们不会显示在 GUI 中。这对我来说真的不是问题,但 EFCorePowerTools 也没有映射这些依赖项。所以我的问题是 - 有谁知道当您右键单击并选择查看依赖项时 Microsoft SSMS 工具使用什么来直观地显示依赖项?我需要弄清楚我的一些关系与其他关系有何不同。我以同样的方式制作它们,并尝试删除并重新添加有问题的那些。重新创建它们没有任何区别,它们仍然没有出现。任何帮助表示赞赏。
更新感谢 EFCorePowerTools 的某个人,我了解到 Entity Framework Core 正在使用 sys.foreign_keys 进行定义。当我查询该表时,我看不到任何有用的信息。
桂的形象:
图像EXEC sp_MSdependencies N'Item.Item', null, 1315327