我在WPF的窗口中有一个ListView
。它绑定到实体框架,ItemsSource
的类型为List<Model.Asset_Asset>
。此窗口调用高级搜索窗口并从中获取大型字符串过滤器。
这里有一个简单的输出过滤器:
([barcode] like 'bar12%' and ( [isParent] = 'True' and ( [Name] like '%pr%')) and ( [Group] = 'A' or ( [Group] = 'B')))
注意:输出过滤器是动态的,可能会变得非常复杂。
使用这个大型过滤器哪种方式更好?
将ItemsSource
更改为DataView
并对其进行过滤。是否可以将DataView
中的数据类型更改为Asset_Asset
?
将过滤器传递给Entity Framework。如果有可能我该怎么办?
制作stored procedure
并将过滤器传递给它。如何将sp
的类型更改为Asset_Asset
?
我是否应该忘记EF
并使用DataView
来绑定已过滤的列表?
提前致谢。
答案 0 :(得分:0)
这是一个旧帖子。这些年过去了,我有足够的能力来回答这些问题。 所以对于任何可能使用答案的人:
问题 1、2 和 4:
可以使用dbContext
来执行sql查询和返回类型。
问题 3: 在解决方案资源管理器中找到 edmx 文件并转到属性。双击 sp 并选择返回类型。