Entity framework core ef7接受字符串路径的DbSet.Include运算符

EF6有一个DbSet.Include重载,它接受一个字符串参数,该参数表示要在查询结果中返回的相关对象的点分隔列表。它对于在多级对象图中加载实体非常有用。例如: var order = await _dbContext.Orders .Include(o => o.Customer) .Include("OrderDetails.Product") // dot-delimited path .SingleOrDefaultAsync(o => o.Orde

Entity framework core 是否可以使用一个数据库动态定义另一个数据库的连接字符串?

我目前的项目有点困难 我有三个标准化的数据库,其中一个我想动态连接;这些是: 帐户:用于安全的帐户信息,跨客户端 配置:用于管理我们的客户 客户:这将是我们每个客户的原子&保存他们的所有信息 我需要使用存储在“配置”数据库中的数据来修改将用于连接到“客户机”数据库的ConnectionString,但这是我遇到的问题 到目前为止,通过连接EntityFrameWorkCore工具并使用“Scaffold DbContext”命令,我已经将数据库中的实体生成到一个项目中&可以进行简单的查找以确

Entity framework core EF Core计算属性生成低效查询

我有一个类,它有两个字段 public bool IsX { get;set; } public bool IsY { get; set; } public bool IsZ => IsX || IsY; 我不必每次都记得查询实体是X或Y,而是想添加一个帮助器来为我这样做(假设X和Y实际上是Z的子集) 但当我运行这个程序并查看为IsZ处的计数生成的SQL时,它将选择所有属性和所有记录,然后似乎在内存中进行计数。如果我在IsX或IsY处进行计数,它将只进行计数(*),并应用正确的whe

Entity framework core EF Core CosmosDb未保存继承层次结构的子属性 复制步骤

我有一个设置,例如: 公共上下文:DbContext{ 公共数据库集动物{get;set;} } 公营动物{ 公共字符串颜色{get;set;} } 公猫:动物{ 公共整数{get;set;} } 公营狗:动物{ 公共int小狗{get;set;} } 然后我将一只猫和一只狗添加到我的收藏中(\u context.Animals.Add(new Dog(){…});和\u context.Animals.Add(new Cat(){…}); 但是,在CosmosDb中,属性Color和life

Entity framework core 在.net core 3中按日期和其他字段获取第一条记录

我正在尝试通过另一个字段“组”使用.NETCore3获取最新记录。在.NETCore2中,使用GroupBy可以实现这一点,但这不再有效,并且会导致异常-现在我正在寻找替代方案 实体如下所示: Client --> Messages 示例:消息表中的数据如下所示: |Date |Client |Message | |01-01-2019|A |Hello | |05-10-2019|A |Blah | |06-11-2019|A |New

Entity framework core 配置EF核心CLI参数

我有一个ASP.NET Core项目,其中的数据访问层使用EF Core 3.1.8,也使用cli工具的版本3.1.8。表示层和数据访问层位于不同的项目中。要在cli中运行EF命令,我打开一个developer命令提示符,导航到包含数据访问层的目录,然后运行命令,如 dotnet ef migrations add MyMigrationName --startup-project ../Site/Site.csproj 或 Site在这里只是一个占位符。实际项目名称较长,每次运行命令时都不方

Entity framework core 如何在EF Core 5中实施TPC?

我正在尝试在ef core 5中实现TPC。 在这里,我发现EF Core 5中没有TPC。只有TPT和TPH。 但我需要的正是这一点,在我的模型中不复制代码是否可能 例如: 抽象类动物,类狗:动物,类猫:动物 数据库中的表格: 狗、猫嗯,正如你所说,它不受支持。我不太明白你的问题。

Entity framework core 实体框架7应用程序角色

在EF6中,可以使用System.Data.Entity.Infrastructure.Interception为MS SQL Server实现应用程序角色。我在EF7库中找不到任何关于拦截的参考。在EF7的路线图中,它将“查询和更新的简单拦截机制”列为高优先级。这将提供实现应用程序角色的功能吗?如果是这样的话,那就太好了,但有什么理由要把应用程序角色隐藏在如此晦涩的背后呢?为什么我们不能简单地为应用程序角色用户名和密码设置DbContext属性呢?Microsoft程序经理Rowan Mill

Entity framework core 实体框架核心3.1查找表Fluent API加载错误

这应该是一个超级简单的问题,但所有的一对一或多对一关系都不起作用。我有三张桌子:产品、品牌和载体。产品必须有品牌。产品可能有载体,也可能没有载体。每个产品只有一个品牌和一个载体。当我在页面上列出产品时,我希望能够说出MyProduct.Brand.Name来列出品牌名称。我想在我的上下文中使用即时加载。当我得到我的产品列表时,我需要什么来设置类、上下文并确保所有东西都正确加载 今天,当我加载我的产品时,我看到加载了一个,但它并不总是与BrandId匹配。我还看到CarrierId为null时加载

Entity framework core 如何通过添加迁移检测项目何时运行

我有一个.NETCore3.1WebAPI解决方案,使用EFCore作为数据库。当我执行addmigration以生成数据库迁移时,该工具将运行启动项目。我想跳过启动项目启动时执行的一些代码(它不会影响迁移生成)。在项目代码中,有没有一种方法可以说明它是从EF工具启动的

Entity framework core 与ef core 5的一对一关系(使用2 FK)

我有这两个实体。每本书可以有一个或零个BookDetail(1:1关系) 我想要有两个边的外键,我只需要为一个边的外键找到解决方案,但我想在EF Core 5中存储BookDetail的FK Id,反之亦然 要模拟一本书可以有0或1个BookDetail的事实,您必须在书上设置FK,指向BookDetail,可为空,选中此项: 这是: } 如果没有书籍本身,BookDetail就不可能存在,这是否符合现实,因此在这种情况下,BookDetail与书籍之间的FK必须不可为空。 我不会“扭曲

Entity framework core 在子查询中使用FirstOrDefault

我们的一些LINQ到SQL查询存在重大性能问题 我们有一个案例表,在CaseStatus上有一对多关系(关系表是CaseStatus) 尽管我们希望跟踪一个案例的所有状态,但只有最后一个状态才真正有价值 我们正在构建一个如下所示的查询: IQueryable<Case> results = Repository.GetFullList(); // Returns a Queryable if(filter.OnlyOpen){ results = results

Entity framework core EF Core remove适用于未运行的迁移

我正在尝试删除出错的迁移。我有以下迁移: 初始迁移 Mybad迁移 首先,我的数据库状态是InitialMigration 然后我运行“dotnet ef迁移添加MyBadMigration” 然后运行应用程序,用dbContext.database.Migrate()更新数据库 我的数据库已更新为新状态 然后我意识到我的迁移不好,我想恢复更改 我应用“dotnet ef database update InitialMigration”,我可以看到我的数据库已恢复 然后,我希望快照和MyBa

Entity framework core 删除父行后,如何将子项保留在自引用表中?

我在自引用表中有一对多关系。从数据库中删除父行后,我希望将子行保留在表中 不幸的是,当我试图删除家长时,我得到的是: DELETE语句与同一个表引用冲突 约束FK_Libraries_Libraries_TemplateId。冲突发生了 在数据库xxx的表dbo.Libraries中,列“TemplateId” 以下是我的配置: public class Library { public int Id { get; set; } public int? TemplateId {

Entity framework core IdentityServer4实体框架SQL Server连接字符串

我正在尝试按照quickstart将SQL Server(不是Visual Studio附带的SQL Server的LocalDb版本)设置为我的数据存储。看起来需要两个数据库—一个用于配置,另一个用于操作。但我的问题是,我不知道应该使用什么db名称。我使用自己的名字创建了两个数据库,并运行从quickstart下载的脚本来创建所有表。现在,当我尝试建立连接时,我想我需要在连接字符串中指定db名称,不是吗?我应该使用什么来替换quickstart提供的原始连接字符串-“数据源=(LocalDb)

Entity framework core 如何在XAF中使用实体框架核心

是否可以在XAF(eXpress Application Framework)中使用实体框架核心1(以前的实体框架7)?是 XAF支持微软的实体框架吗 对。XAF提供对实体框架的支持。您可以使用现有的EF数据模型来生成XAF应用程序。请查看业务模型设计页面以了解更多信息 从 更新 为了澄清,可以使用EF Core,因为XAF运行在.NET上。如果您要问的是“XAF是否与EF Core一起开箱即用?”答案是否定的。XAF的烘焙类eObjectSpace适用于EF6及更早版本,因为它依赖于Objec

Entity framework core EF7核心多对多引用对象未填充

我很难让EF7填充多对多联接中引用的对象。我已经在跟踪文档,但对象仍然为空。从我所能告诉你的,你不必做任何特定的事情来让EF填充它们。我从文档页面复制了示例代码,如下所示: public class MyContext : DbContext { public DbSet<Post> Posts { get; set; } public DbSet<Tag> Tags { get; set; } public MyContext(DbContex

Entity framework core 基于POCO接口的modelbuilderfluent

我正试图找出ModelBuilder/Fluent API,这样我就可以修改底层CLR类型实现特定接口的实体的属性 给定一个接口,例如: public interface IVersionedEntity { DateTime ValidFrom { get; set; } DateTime ValidTo { get; set; } } 在onmodel创建期间,我希望找到实现此接口的底层CLRType的任何实体,然后将ValidFrom和ValidTo属性更改为valueG

Entity framework core 从dbset core 2.1获取属性值

如何动态运行以下代码: _context.TableName.First().Value; 我试试这个: _context.GetType().GetProperties().Where(p => p.Name == "PropertyName").First().GetValue(_context, null) 但是我不能调用First()方法。这是一件非常奇怪的事情。假设您让它工作,您将如何处理结果?它不只是\u context.Property(“PropertyName”).V

Entity framework core 给定主键,是否可以在EF Core模型中找到所有外键?

我正在使用一个相当大的EF核心模型,该模型在代码中定义了所有表和关系,这些表和关系最终都连接到上下文对象。如果我有一个主键,是否有一种干净/高效的方法来获取模型中的所有依赖列 作为我正在使用的示例,此代码段用于查找给定表的主键名称(该表由其类型T(该代码所在函数的参数)可知): 我在翻阅键对象的属性时找到了答案。不获取名称,而是获取对象本身,然后调用这两个其他方法来获取引用主键的外键: var key = context.Model.FindEntityType(typeof (

Entity framework core 我能';t运行迁移(使用.net core 3.0和实体框架)

我的.Net核心版本是3.0.100-preview6-012264。你可以问我为什么使用预览版。主要原因是使用GRPC(为此搭建脚手架)进行了有益的工作。现在我想在我的项目中使用实体框架。我有以下.csproj: <Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <TargetFramework>netcoreapp3.0</TargetFramework>

Entity framework core EfCore 3和Owned类型在同一个表中,如何设置Owned实例

如何使用efcore3设置拥有的类型实例 在下面的示例中,引发了一个异常 '类型为'Owned'的实体正在与共享表'Principles' 类型为“Principal”的实体,但没有具有 已标记为“已添加”的相同键值 如果我设置了子属性内联,则savechanges不会更新子属性 我找不到这方面的任何例子。我尝试了几个efcore3版本和每日版本。我不明白什么 using System; using System.Linq; using Microsoft.EntityFrameworkCore

Entity framework core EFCore/EntityEntry/attaching

我对EFCore和changetracker很陌生,但我发现我们可以从上下文中提取EntityEntry。我一直在搜索,但我想知道是否有将EntityEntry附加到另一个上下文的快捷方式。如果这是可能的,剩下的步骤将是将原始值与新上下文中包含的值进行比较——如果它们不同,那么出于并发原因不应触发SaveChanges——这可能就像比较时间戳或哈希值一样简单 简而言之,有没有办法将EntityEntry附加到另一个上下文 我意识到我们可以简单地封送当前值,但这比简单地将EntityEntry直接

Entity framework core EFCore问题:Notes表是其他几个表中的子表

我正试图找出在EFCore2.x中制作“Notes”表的最佳方法。我有几个其他的表(家庭、个人、员工等),每个表都应该有一个0:M到Notes表。如果这在EF之外,我将有两个字段,一个用于表名/id(家庭、个人、员工),另一个用于该表中记录的键。注释表中有两个字段,ParentTable和ParentID,都是int。我在每个父表中放入一个静态常量,该常量具有唯一的NoteTypeID 我如何标记它或使其流畅,以便EF Core知道如何关联每个父表中的Notes记录?作为替代方案,我可以将每个父

Entity framework core EF7中的预测

我尝试在Entity Framework 7中执行以下简单投影,并得到错误: System.InvalidOperationException was unhandled by user code HResult=-2146233079 Message=When called from 'VisitMethodCallExpression', expressions of type 'Expression' can only be replaced with other non-nul

Entity framework core EFCore DbConnection.CreateCommand参数未传递

我在我的项目中使用EFCore,我试图执行一个原始SQL查询(因为我针对的是一个我不拥有的数据库,不想为它构建大规模的模式),并传入一个参数。下面是我正在做的事情(尽管我已经更改了保护查询): 问题是参数似乎没有传入。如果我将要发送的customerName的值硬编码,它工作正常并返回行,但是如果我将其作为参数传入,result不会返回任何行该参数不得包含在内,否则它不会被检测为参数。改用这个: command.CommandText = @"select * from customers wh

Entity framework core 实体框架核心ExecuteSqlInterpolated提供Microsoft.Data.SqlClient.SqlException

我在一堆表上循环,必须删除每个表中具有特定列名的记录。我能够获得该列表,但以下行给出了异常:Microsoft.Data.SqlClient.SqlException(0x80131904):必须声明表变量“@p0”。 属性名称类似于Person.Address,其中Person是放置表的架构名称 Entity Framework Core的版本是3.1.8我进一步挖掘了异常详细信息和源代码 我用以下语句解决了这个问题: contextCtx.Database.ExecuteSqlRaw($&q

  1    2   3   4   5   6  ... 下一页 最后一页 共 21 页