编译器混淆分配和比较

时间:2012-08-23 03:18:02

标签: .net vb.net linq operators

我有一个LINQ CP_Stop中的实体对象,我试图用不同的数据填充属性。

Dim stop As New CP_Stop
With stop 
    .fdStart = dtpStart.Value
    .fdEnd = dtpEnd.Value
    .CP_Cause = cause
    .User = user
    .Machine = machine
    .CP_Production = _presenter.GetProduction()
End With

前两个分配,以及第三个分配,CP_Cause是我在方法中先前查询的对象,但是当它涉及到第四个时,它崩溃了。 错误如下:

  

未为类型'Entities.Users'和'Entities.Users'定义运算符'='。

有趣的是,如果切换例如原因和用户分配,则第一个进行,另一个崩溃。与所有其他对象分配相同的场景。在我看来,编译器混淆了赋值。

我已经尝试了几种方法来进行分配,就像在另一种方法上进行分配一样,但在第一种方法之后它总会崩溃。

1 个答案:

答案 0 :(得分:0)

我不确定你是否可以拥有一个包含对另一个表的另一行的引用的列属性,因为它将如何在sql中进行转换?你必须使用一个键(expl:userId而不是用户) 你可能想看一下EntityRef和EntitySet,来处理一对一/一对多的关系,但这很复杂。