0

EF に変換しようとしている複雑な SQL ステートメントがあり、1 つだけ問題が残っています。

これはSQLで問題の部分です

inner join history_master h2
on h.taskid=h2.taskid and h2.file_no = 'REX223349'

私はEFでそれを試みていますが、file_noをパラメーターとして渡す方法がわかりません。

私は試した:

.Join(context.History_master, h => new { h.h.h.taskid, h.h.h.file_no }, h2 => new { h2.taskid, h2.file_no.Where(fileNumber) }, (h, h2) => new { h, h2 }) 
//fileNumber is a string passed to the function

taskidこれでandの結合が実行されると思っていましたh2.file_no = 'REX223349'が、代わりにエラーが発生します。

ここで誰かが私を正しい方向に向けることができますか? 上記の SQL ステートメントのように結合が実行されるように、文字列を EF に渡すにはどうすればよいですか? 詳細が必要な場合、または説明が必要な場合はお知らせください。この問題を意味のある言葉で表現するのはかなり難しかったです :/

4

1 に答える 1

0

次のようなことを試してください:

var result = (from t in context.Task
    join h in context.History_mast on new (taskID = t.taskID, File_no = "REX223349") equals new (taskID = h.taskID, File_no = h.File_no)
    select new (t,h));
于 2012-08-14T17:35:58.693 に答える