我正在使用Entity Framework 4.0。在我的一个类中,我的构造函数如下所示:
Public Sub New(ByVal context As ObjectContext)
Me.objectSet = context.CreateObjectSet(Of Customer)()
End Sub
我的objectSet只会保存名为Bob的客户的对象,但会多次。
返回的ObjectSet如下:
Bob Bob Bob Bob
表(实体Customer)如下所示:
Bob Ann Peter Alice
objectSets bob对象数=表格行数
为什么objectSet不返回Bob,Ann,Peter,Alice的对象? 我做错了什么?
提前致谢!
UPDATE1:
感谢您的回复!
Custumer是我的ObjectContext中的实体,Enity类是自动生成的。 我得到了这样的客户:
Public Function GetAll(ByVal companyId As String) As
System.Collections.Generic.IEnumerable(Of Customer) Implements
ICustomerRepository.GetAll
Return Me.objectSet.Where(Function(p) p.CompId = companyId).AsEnumerable
End Function
问题是CustomerRepository中的构造函数不检索客户集,它只在结果集中一次又一次地返回一个客户。当我在构造函数中插入一个断点并将我的光标放在ObjectSet上时,结果只显示Bob多次。
UPDATE2:
我的功能仍有问题。它返回reult集正确,(不仅是Bob),但它不会只选择Comp.Id = conmpanyId的客户。我也试过
Return From p In Me.objectSet Where p.CompId = companyId Select p
如何正确编写查询?
谢谢!