我有一个对象模型,我正在检查嵌套子属性的筛选器值,例如
Order ->客户
客户有一个属性,例如Name = "Joe Bloggs"
我的域服务返回IQueryable<Order>。我的域数据源绑定到这个域数据源(反过来,我的Grid也绑定到域数据源),并且我有一个过滤器描述符集,如下所示:
<ria:FilterDescriptor Operator="Contains" Value="{Binding Text, ElementName=txtCustomerName}" PropertyPath="Customer.Name" IgnoredValue=""/>这一切都很好用,除了订单和客户之间的关系是可选的,即订单可能没有客户,因此客户导航属性可能为空。在这种情况下,当运行查询时,域数据源抛出null引用异常-可能是因为它试图遍历客户并获取name值,而客户当然为null。
有没有人能想出解决这个问题的好办法?
发布于 2011-06-27 05:45:49
我最终通过使用相当于DomainDataSource的MVVM解决了这个问题-- DomainCollectionView及其相关类。这样,您就可以更好地控制查询组合,因此,我让查询在对其Name属性求值之前,对其进行null检查。
https://stackoverflow.com/questions/6422627
复制相似问题