プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
C#、linq to sqlで「join句のいずれかの式の型が正しくありません。'GroupJoin'の呼び出しで型を推論できませんでした。」
linq to sqlでゲンナリ(´A`)

複合キーでjoinしようと思ったら

「join句のいずれかの式の型が正しくありません。'GroupJoin'の呼び出しで型を推論できませんでした。」

とか怒られた。
何だよ、こいつ。泣くぞ!?

エラー自体は型違いの項目をキーに結合した時とかに出るらしいのですが・・
どっちもnvarchar(5)だ、ぼけ(#゚д゚)
と2時間位キレっぱなし。

結局の所、比較項目の元々の名前が違ったからダメだった模様です_| ̄|○
冷静に考えたらそりゃそーかなのですが、
microsoftのサンプル見ても分からんって(つд`)

具体的には、

◆テーブル1
テーブル名:tbl1
項目1:short1:smallint
項目2:str1:nvarchar(5)

◆テーブル2
テーブル名:tbl2
項目1:short1:smallint
項目2:str2:nvarchar(5)

とかあって、

on new{tbl1.short1, tbl1.str1} equals new{tbl2.short1, tbl2.str2}

とか書いていたのですよ。これでエラーが出てました。
これを

on new{a = tbl1.short1, b = tbl1.str1} equals new{a = tbl2.short1, b = tbl2.str2}

って名前つけてあげたら無事エラー消滅。
横着しないでちゃんと書けって事ですね(;´A`)


くっそー。
SQLでごりごり書けば5分で終わるのに。。


linq to sqlってほんとーーーーーーに便利なのでしょうか?
何かやる度に「SQLだったらさくっと出来るのに(つд`)」って思ってるの私だけ?
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:● C#  thema:システム開発 - genre:コンピュータ  Posted by ササキマコト 

  関連記事