我正在尝试将带有动态 where 子句的查询返回的结果绑定到 WPF DataGrid。
使用 Database.SqlQuery 似乎没有 Load() 方法,也没有 Local() 来返回 ObservableCollection。因此,我正在使用 New ObservableCollection(Of Product)(q1)。这是推荐的用法,还是我错过了什么?
使用 DbSet.SqlQuery 我发现根本无法获取数据。这个应该怎么用?
Dim _dbc As New AdventureWorksEntities
''Using DbSet
'Dim q = _dbc.Product
'q.Load()
'Dim r = q.Local
'grd.ItemsSource = r
Const sql = "select * from production.product WHERE name LIKE 'fla%' and ProductNumber LIKE '%0'"
'Using Database.SqlQuery
Dim q1 = _dbc.Database.SqlQuery(Of Product)(sql)
Dim r1 = New ObservableCollection(Of Product)(q1)
grd.ItemsSource = r1
''Using DbSet.SqlQuery
'Dim q2 = _dbc.Product.SqlQuery(sql)
''Dim r2 = ???
''grd.ItemsSource = r2