问题标签 [entity-framework-extended]
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# - 使用 EntityFramework.Extended 执行更新时出现“无效的列名”错误
我正在使用EntityFramework.Extended库进行一组批量更新。我正在更新的表格的重要部分如下所示:
C# 更新代码如下所示:
这会生成如下所示的 SQL 更新代码:
当我通过 C# 代码或手动执行生成的 SQL 运行更新时,我收到此错误:
问题是生成的 SQL 中有错误。请注意这样的部分:
它实际上应该是:
那么,我的假设是 EntityFramework.Extended 库中存在某种错误。
解决方法的建议?
entity-framework - Entity Framework 6 批量更新和 AuditLog 使用 Entity Framework Extended
我正在使用 Entity Framework 6,并且正在使用 EntityFramework Extended 来执行一些批量更新和批量删除。批量更新和批量删除工作正常,但是我还需要知道被更新/删除的实体(即当前和以前的值)。我认为使用 EntityFramework.Extended 提供的 AuditLogger 可以为我提供更新或删除的实体的详细信息,但情况似乎并非如此。例如,使用下面的代码,即
这是将所有 addressId 更新为 的简单批量更新1190
。如果我检查changes.Entities
,它返回一个 0 的计数,即一个空列表。
我所期望的是,changes.Entities
在 addressId 更改为之前,它将包含所有具有旧值的“旧”实体1190
。
我弄错了还是这确实是正确的行为?使用实体框架扩展批量更新/删除时如何获取所有更新实体的审核日志
谢谢
c# - 无法使用更新按条件分配值
我正在尝试编写 linq 表达式来更新我的所有记录并根据 id 匹配条件设置它们的默认字段:
但在这种情况下,我收到一个错误:
我怎么了?我尝试了其他条件,它似乎工作正常,直到另一个字段参与条件:
c# - 使用 EntityFramework.Extended 和关系表批量删除
我有一个包含多对多关系表的表,这里是配置
据我所知,没有可用的级联删除选项。
这是删除代码
它因约束错误而失败,因为该表ProductBatchDeleted
对其有约束。我可以修复以便Extend
图书馆了解它必须ProductBatchDeleted
首先对表进行删除吗?
c# - 根据值更新实体属性
我有一个场景,我需要根据运行时值选择要更新的属性之一。
有一个更好的方法吗 ?无论如何要在实体框架中连接字符串,这将允许我这样做
c# - 使用扩展的实体框架进行批量更新
这会产生运行时错误:
查询必须是 ObjectQuery 或 DbQuery 类型。\r\n参数名称: source
我正在使用 EF 6.0 和 EF Extended 6.0 和 .NET 4
我需要进行批量/批量更新,否则性能是不可接受的。
listOfIDs
是类型List<string>
c# - 使用 EF Extended 批量更新添加到多对多?
我有一种情况,我需要为一组具有多对多关系的对象的属性添加一个新项目。有没有办法使用 EntityFramework.Extended 批量执行此操作?就像是...
显然,Update() 部分是不正确的。目前,我已经通过检索集合和循环来解决它。只是想知道是否有更好的方法。
c# - 如何伪造 EntityFramework.Extended FutureQuery?
我正在寻找设置一个假存储库。
这样做的目的是编写依赖于数据的测试,而不依赖于任何数据库连接。这对于该类型来说非常简单,FutureValue<>
因为它提供了一个接受直接对象的构造函数。然而,构造函数FutureQuery<>
接受参数IQueryable query, Action loadAction
我可以忽略loadAction
吗?
如:new FutureQuery<Foo>(foos.AsQueryable(), () => { });
或者解决这个问题的正确方法是什么?
强制解决方案:
c# - 使用实体框架 6 通过一次查询聚合数据
我们使用没有存储过程的 EF 6。
做一个报告图表显示从开始/结束日期的聚合数据:
该数据的每个聚合都必须使用此日期时间过滤器:
是否可以通过一个查询进行数据聚合?或者可能是多个查询并在最后执行它们?或者这会变得太复杂吗?我应该分解多个存储库调用中的数据获取并在服务中进行数学计算吗?
如果有人在这里对我有好的建议,我会很高兴。
更新:
最后,我发现 EF 扩展了未来的查询,我可以在其中批量查询。
我需要返回的是 6 个不同 where 查询的 6 个计数。
但是查看最小的 EF 扩展未来查询示例,我看不到一种方法可以通过 ONE 查询获得 6 个计数值。
有谁知道?
c# - 使用 Entity Framework.Extensions Future 查询获取属性的错误数据类型
我将实体框架 6.1.3 与 MySQL 5.6 一起使用。我有以下查询:
稍后,我使用 foreach 循环遍历 qAccounts。但是一旦我尝试这样做,我就会收到以下错误:
“执行未来查询时发生错误。”
内部异常更能说明问题:
“关键字段 'IsDefault' 的类型应为 'System.Boolean',但提供的值实际上是 'System.UInt64' 类型。”
在数据库中,IsDefault 是一个布尔值。它也是该视图模型中的布尔值 (vw_account)。如果我从查询中删除 .Future() 以使其立即执行,我就没有这个问题。
有谁知道为什么?