有关ADO.NET实体框架的问题,.NET Framework的对象关系映射(ORM)工具。如果适用,请添加特定于版本的标记。不要将此标记用于Entity-Framework核心问题。请改用entity-framework-core。
在使用涉及动态条件的方法时,实体框架将 LINQ 表达式转换为 SQL 查询时遇到问题 公共静态 IEnumerable 在使用涉及动态条件的方法时,实体框架将 LINQ 表达式转换为 SQL 查询时遇到问题 public static IEnumerable<KeyValuePair<TKey, TValue>> GetKeyValueAsync<TEntity, TKey, TValue> ( this IQueryable<TEntity> queryable, KeyValueFilters<TKey?> filters, Expression<Func<TEntity, TKey>> keySelector, Expression<Func<TEntity, TValue>> valueSelector ) { var term = filters.Term?.ToLower().Trim(); var id = filters.Id; var keyCompliled = keySelector.Compile(); var valueCompliled = valueSelector.Compile(); var query = queryable .Select(x => new { Key = keyCompliled.Invoke(x), Value = valueCompliled.Invoke(x) }) .WhereIf(id != null && string.IsNullOrEmpty(term), x => x.Key!.ToString() == id!.ToString()) .WhereIf(!string.IsNullOrEmpty(term), x => x.Value!.ToString()!.ToLower().Contains(term!)) .Take(5) .ToList(); var data = query.Select(x => new KeyValuePair<TKey, TValue>(x.Key, x.Value)); return data; } 执行上述代码时遇到以下错误: The LINQ expression 'DbSet<SubscriptionType>() .Where(s => __ef_filter__p_0 || !(EF.Property<bool>(s, "IsDeleted")) && __ef_filter__p_1 || (Guid?)EF.Property<Guid>(s, "TenantId") == __ef_filter__CurrentTenantId_2) .Where(s => __keyCompliled_0.Invoke(s).ToString() == __ToString_2)' could not be translated. Either rewrite the query in a form that can be translated, or switch to client evaluation explicitly by inserting a call to 'AsEnumerable', 'AsAsyncEnumerable', 'ToList', or 'ToListAsync'. See https://go.microsoft.com/fwlink/?linkid=2101038 for more information. System.InvalidOperationException: The LINQ expression 'DbSet<SubscriptionType>() .Where(s => __ef_filter__p_0 || !(EF.Property<bool>(s, "IsDeleted")) && __ef_filter__p_1 || (Guid?)EF.Property<Guid>(s, "TenantId") == __ef_filter__CurrentTenantId_2) 请注意,除非在查询中应用条件 (WhereIf),否则一切正常。该错误特别发生在使用条件逻辑过滤数据的场景中。 起初,我认为WhereIf无法翻译为数据库脚本,但看起来可以。 卷轴答案是:该功能不能用于IQueryable对象。它适用于 IEnumerable。 请参阅此链接:如何在 LINQ 中使用 whereif
如何在 Entity Framework Core 中克隆实体?
我尝试使用 SetValues 方法克隆实体,但出现以下错误: 无法跟踪实体类型“TariffPeriod”的实例,因为另一个实例具有相同的键值...
我想我在这里遇到了一个基本的 OOP 误解: (顺便说一句,这些是实体框架 6 类,以防您对“虚拟”感到惊讶) 公共类 WeaponUsed :历史事件 { 公开
我正在学习 Blazor。在我的页面上,当我单击“搜索”按钮时,_persons 列表的内容会闪烁,该变量是否正在被垃圾收集?提前致谢。 @页 ”/” @你...
我正在使用 Entity Framework 7,我有一个这样的案例: 具有列的实体:Id、TakenBy,映射到 SQL Server 2018 中的表。 现在我有几个进程在同一个表上工作(对于某些
当我运行添加迁移类别时,我在 ASP.NET Core 5 中收到此错误: 实体类型“用户”需要定义主键。如果您打算使用无键实体类型,请在“
我有一个与证书具有一对多关系的员工实体(1名员工可以拥有多个证书),下面是我的实体类 公共密封类 UserProfileAggregate :聚合...
我正在尝试为 EF 的以下模型构建一个控制器,但我收到: 无法检索“Project.Models.ItemModel”的元数据。 值不能为空。 参数名称:entitySet' ...
我有一个带有 SQL 数据库的 .Net Core 3.1 应用程序。我使用延迟加载代理自动从相关表中检索数据。基本上,我有一个表,它引用了其他一些实体......
我想弄清楚是否有一种方法可以使用实体一次更新多行。 现在我使用 Linq2Sql SubmitChanges 它将逐行执行更新: c.PROPERTYONE = valueO...
我正在寻找一种使用实体框架编写代码来更新 1000 条符合条件的记录的方法。 在 SQL 中它看起来像这样 更新[项目] SET [是否处于季节] = 1 WHERE [名称] 如 '%
Entity Framework .NET 中的字段为必填错误
公开课活动 { [密钥,数据库生成(数据库生成选项.无)] 公共 int ActivityId { 获取;放; } [外键(“宠物”)] 公共 int PetId { 获取;放; } p...
我在 EF 中使用代码优先方法,我创建了一个存储过程来选择,当我运行它时,我从 User 表中获取值,但 FK 属性为空。 这是我的存储过程: 阿尔...
在实体框架中,使用 getAll,如何在同一响应中包含其他数据集的列表
我想创建一个包含其所有模型类属性的响应。 从数据库获取所有优惠时,我得到的 Bundles 和 OffersAddons 返回为 null。我怎样才能获得全部
我正在尝试在 ASP.NET MVC 中开发一个牛授精控制系统(这是一种节育措施,我有小牛的出生、他们母亲、父亲的名字等数据),与
我在 Winforms 应用程序中使用实体框架。应用程序连接到 MSSQLServer,一切正常。然后我分离数据库并将 .mdf 文件复制到应用程序文件夹并查...
假设您有“客户”和“购买”表,并且您希望返回来自克努芬根市的所有客户及其 2023 年购买情况的 DTO。 var 客户 = context.Customer .哪里(c =&...
在实体框架6中添加迁移创建数据库时出错,找不到CoreTypeMappingParameters方法
我正在尝试运行添加迁移以在本地计算机上创建数据库,在最后几秒钟我收到此错误: 找不到方法:'Void CoreTypeMappingParameters..ctor(System.Type, Microsoft.
未找到:'Void CoreTypeMappingParameters..ctor
我将项目从 ef 6 更新到 7 并收到此错误 未找到:'Void CoreTypeMappingParameters..ctor(System.Type,Microsoft.EntityFrameworkCore.Storage.ValueConversion.ValueConverter,Microsoft。
尝试更新数据库、使用 C# 和 ASP.NET Core、实体框架时出现外键约束错误
这是我收到的错误: 在表“Battlestation”上引入外键约束“FK_Battlestation_AspNetUsers_UserId”可能会导致循环或多个级联路径。指定 ON DELETE NO ACT...