我有一个Filterdescriptor,如下所示。属性路径的类型为“char?”
<riaData:FilterDescriptor PropertyPath="Valid" Operator="StartsWith">
<riaControls:ControlParameter PropertyName="Text" RefreshEventName="TextChanged" ControlName="ValidFilterBox" />
</riaData:FilterDescriptor>
当我通过输入值Y
进行过滤时,我得到了InvalidOperationExceptionInnerException {System.InvalidOperationException:FilterDescriptor 其PropertyPath等于'有效'无法评估。 ---&GT; System.ArgumentException:运算符'StartsWith'与。不兼容 操作数类型'Char?'还有'Char?' ---&GT; System.ArgumentNullException: 值不能为空。参数名称:方法at System.Linq.Expressions.Expression.ValidateCallArgs(表达式 实例,MethodInfo方法,ReadOnlyCollection
1& arguments) at System.Linq.Expressions.Expression.Call(Expression instance, MethodInfo method, IEnumerable
1个参数)at System.Linq.Expressions.Expression.Call(表达式实例, MethodInfo方法,Expression [] arguments)at System.Windows.Controls.LinqHelper.GenerateMethodCall(字符串 methodName,表达式左,表达式右)at System.Windows.Controls.LinqHelper.GenerateStartsWith(表达式左, 表达权) System.Windows.Controls.LinqHelper.BuildFilterExpression(表达式 propertyExpression,FilterOperator filterOperator,Expression valueExpression,Boolean isCaseSensitive,Expression&amp; filterExpression)---内部异常堆栈跟踪结束--- --- 内部异常堆栈跟踪结束---} System.Exception {System.InvalidOperationException}
答案 0 :(得分:0)
使用“RIA Services DataFilter Control for Silverlight”,排序/过滤/分组真的很容易。 http://riadatafilter.codeplex.com/