问题描述
我在使用过滤器编辑器过滤数据时遇到问题,我正在使用对象(订单)来获取数据 我收到此错误:
System.NotSupportedException: '无法比较'System.Collections.Generic.ICollection`1[[CodeEffects.Rule.Asp.Demo.Entities.Order,CodeEffects.Rule.Asp.Demo,Version=1.0.0.0 类型的元素,Culture=neutral,PublicKeyToken=null]]'。仅支持原始类型、枚举类型和实体类型。'
解决方法
实体框架不再支持将相关表与空值进行比较(如果曾经支持过)。 CodeEffects 可能需要调整他们的代码来解决这个问题。
作为一种解决方法,将 EvaluationParameters.PerformNullChecks = false 设置为:
EvaluationParameters evps = new EvaluationParameters
{
LINQProviderType = LinqProviderType.Entities,PerformNullChecks = false
};
您在 Evaluator 的构造函数中传递这些参数。
请注意,这将禁用所有空检查,这在您的特定情况下可能是也可能不是问题。