0

我有一个复杂的 sql 语句,我正在尝试将其转换为 EF,但我只剩下一个问题。

这是 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

我认为这会在 and 上执行连接taskidh2.file_no = 'REX223349'但它给了我一个错误。

谁能在这里指出我正确的方向?如何将字符串传递给 EF,以便按照上述 SQL 语句执行连接?如果您需要更多详细信息或需要解释的内容,请告诉我。将这个问题用有意义的语言表达是相当困难的:/

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 回答