2013-03-06 80 views
0

我試圖在我的應用程序(通過edmx模型的Oracle數據庫)中運行以下查詢。在DB中,TABKE1和TABLE2中的兩個字段(我試圖加入)都是類似的[BENUTZERNR VARCHAR2(15 BYTE)NOT NULL],並且在edmx fie中它們都被聲明爲字符串。Linq Join - 參數類型不匹配

但是,我總是得到一個「參數類型不匹配」的錯誤。 (我使用的是相同的其它連接的查詢,其中不同之處在於加入了數據類型是小數?)

Dim dataObject = (From a In db.TABLE1 
     Join p In db.TABLE2 On a.BENUTZERNR Equals p.BENUTZERNR 
     Select New TableOneViewModel With { 
      .ID= a.ID, 
      ... 
      .BIBLBENUTZER = New TableTwoViewModel With { 
        .BENUTZERNR= p.BENUTZERNR, 
        ... 
       } 
     }) 
+0

您加入的字段具有相同的空狀態?我的意思是兩個都不是null/null? – Ankit 2013-03-06 10:43:08

+0

對於兩個字段,可以設置Nullable Flag爲False。 – stare 2013-03-06 17:20:18

+0

表1和表2中BENUTZERNR的數據類型是什麼? – 2013-03-07 19:12:54

回答

0

發現,就是是一個錯字,並說我漏掉了我的ViewModel屬性中的一個數據類型聲明!

Dim dataObject = (From a In db.TABLE1 
    Join p In db.TABLE2 On a.BENUTZERNR Equals p.BENUTZERNR 
    Select New TableOneViewModel With { 
     .ID= a.ID, 
     ... 
     .BIBLBENUTZER = New TableTwoViewModel With { 
       .BENUTZERNR= p.BENUTZERNR, 
       .SOMEVALUE= {MISSED THE "p" HERE}.SOMEVALUE, 
       ... 
      } 
    })