.NET Framework Interface,提供评估针对特定数据源的查询的功能,其中未指定数据类型。
函数(ServerData)中的 MudDataGrid FilterDefinitions 和 SortDefinitions 不起作用
我有这个方法可以使用 IQueryiable 动态排序和过滤: GridState 状态 = null; 私有异步任务> LoadData(GridState<
在C# Linq中,当类型未知时如何初始化IQueryable或var变量,并且linq查询返回动态字段/对象
我有下面的示例代码,但不知道如何初始化变量。 // 一次使用以下任何一个都不会编译 var 查询结果 = null; // 无论如何这是不可能的,因为变量...
我正在使用 EF Core 7.0。在我的代码中,我创建了一个 IQueryable ,如下所示: DbSet() .Select(t => 新的 AllTicketsDto { 身份证...
我正在使用存储库模式通过实体框架和 LINQ 进行数据访问,作为非测试存储库实现的基础。我看到的大多数样本都返回 AsQuerya...
Entity Framework Core 查询仅适用于 .ToList()
我正在使用 .NET Core 7 和 Entity Framework Core 7.0.13,并且有以下查询: var test = _context.Set .AsNoTracking() .include(m => m.MachineOperations! .哪里(...
我有一个 IQueryable 查询,其中包含一个双精度值属性值。 我想通过小数点前有千位分隔符逗号(欧洲)的字符串来过滤它。 我已经
实例化空 IQueryable 以与 Linq to sql 一起使用
我需要能够在 Linq 查询中拥有可选参数,或者能够将查询分配给 IF 之类的 var(如果需要从查询中删除该可选参数的话)...
我正在尝试模拟我的 dbContext 以测试我的存储库查询/过滤器。我现在已经尝试使用内存数据库或模拟数据库上下文。在这两种情况下,我只能在我...
我已经为此苦苦挣扎了一段时间,但开始看起来这似乎是不可能的。 我想 Concat() 两个 IQueryables,然后将结果作为单个查询执行。我尝试了一些...
在 .NET 中使用 Entity Framework Core 时,如何重用Where调用中的逻辑?
我正在 .NET 中使用 LINQ 编写数据库查询,我希望能够不重复我在Where 方法调用中放入的代码。我的所有实体都继承 BaseEntity 并具有共同的属性...
我正在构建一个存储库,并且我在很多地方看到了 2 个不在存储库外部公开 IQueryable 的原因。 第一个是因为不同的 LINQ 提供程序可能会表现出不同的行为 不同的是,这个
如何在 LINQ 查询 .NET 中正确地将数据从链接表移动到主表?
使用“Where”过滤查询结果不起作用,其中先前的字段之一被替换为链接表中的值 我有一个项目表和另一个相关的...
我需要将方法附加到现有表达式并将它们组合成一个新的结果表达式。 表达式> 源表达式; 表达 我需要将方法附加到现有表达式并将它们组合成一个新的 resultExpression。 Expression<TSource, IQueryable<TResult>> sourceExpression; Expression<TSource, int, int, IQueryable<TResult>> resultExpression; 我需要将 Queryable.Skip() 和 Queryable.Take() 方法附加到 sourceExpression 并完全转换为 resultExpression。 我如何使用 C# 表达式方法来做到这一点? 我尝试将 Expression.Lambda> 与 Expression.Call 一起使用,但当我将 Queryable 方法传递给 Expression.Call 参数时,它会抛出 InvalidOperationException var skipCall = Expression.Call( typeof(Queryable), nameof(Queryable.Skip), new[] {typeof(TResult)}, sourceExpression.Body, Expression.Parameter(typeof(int)) ); var takeCall = Expression.Call( typeof(Queryable), nameof(Queryable.Take), new[] {typeof(TResult)}, skipCall, Expression.Parameter(typeof(int)) ); var resultExpression = Expression.Lambda<Func<TSource, int, int, IQueryable<TResult>>>( takeCall, sourceExpression.Parameters ); “System.Linq.Queryable”类型上的泛型方法“Take”与提供的类型参数和参数不兼容。如果方法是非泛型的,则不应提供类型参数 Skip是通用的,至少接受2个参数,传入IQueryable<T>和int,所以需要创建一个封闭的方法: var method = typeof(Queryable).GetMethod(nameof(Queryable.Skip), new Type[] { typeof(IQueryable<>).MakeGenericType(Type.MakeGenericMethodParameter(0)), typeof(int) }) .MakeGenericMethod(typeof(TResult)); 然后用它来构建表达式。
我正在尝试使用表达式实现 Select,以将对象保持为 IQueryable 并选择到子导航集合中 示例代码: 公开表达 我正在尝试使用表达式实现Select,以将对象保持为 IQueryable 并选择到子导航集合中 示例代码: public Expression<Func<Item, ItemModel>> MapToModel => Ent => new ItemModel { Id = Ent.Id, Name = Ent.Name, SKU = Ent.SKU, Variations = Ent.Variations == null ? default : Ent.Variations.Select(this.VariationMapper), }; VariationMapper 如下: public Expression<Func<ItemVariation, VariationModel>> VariationMapper => Ent => new VariationModel() { Id = Ent.Id, Name = Ent.Name, }; 但是我收到以下错误: “ICollection”不包含“Select”的定义,并且最佳扩展方法重载“Queryable.Select(IQueryable, Expression>)”需要“IQueryable”类型的接收器 我对如何解决这个问题有点困惑。或者如果这可能的话。该子属性的类型为 ICollection<T>,因为它是导航属性。 尝试使用AsQueryable: Variations = Ent.Variations == null ? default : Ent.Variations .AsQueryable() .Select(this.VariationMapper) .ToList() 您不需要检查集合中的 null,EF Core 将处理它。此外,EF Core 将无法正确翻译您的映射器。它需要扩展,这是由 LINQKit 提供的。 public Expression<Func<Item, ItemModel>> MapToModel => Ent => new ItemModel { Id = Ent.Id, Name = Ent.Name, SKU = Ent.SKU, Variations = Ent.Variations.Select(this.VariationMapper.Expand()), }; 如何激活 LINQKit,您可以在此 answer 中找到,以及如何创建可重用 AsDto 方法的示例。
在 Generic IQuerable<T> 方法中转换泛型
我有一个与实体框架一起使用的通用 IQueryable 扩展方法: public static IQueryable Search(这个 IQueryable 源,...) 这种方法的一些用途采用 T
我的 EF Core 应用程序使用旨在通过允许在运行时指定导航属性加载来支持灵活的实体查询的设计模式。这个图案有 3 个关键元素......
IQueryCollection.ToList() 不需要地组合值
我的项目使用了两个库: Swashbuckle.ASPNetCore 流利验证 我正在编写一个验证器拦截器来做一些额外的检查,这些检查需要与验证器分开:MyModelValida ...
我最近一直在尝试将查询结果(即 DailyPerformances 列表)插入到列表中,以获取其中一个为空的信息并获取其列名。这就像一个过滤器
我想写一个IQueryable的扩展方法来过滤掉一些实体。此方法应具有 Expression> 类型的参数,用于过滤实体....
我有两个对象,当我调用成员函数从数据库中检索数据时,排序或调用这些函数会影响结果。无论我调用第二个函数是什么,它都会返回额外的数据。