2

基本上,我有三个表,我们称它们为 TableA、TableB 和 TableC。

表 A 和 B 有两列感兴趣,ID 和值。表 C 有三列,ID、A_ID 和 B_ID。

我正在寻找构建一个 LinqToSQL 查询:

  • 返回表 A 和 B 的值,其中表 C 的记录包含 A 和 B 的 ID

例子:

在此处输入图像描述

返回的记录应该是特定类型的:

public class RecordClass
{
    string A_Value;
    string B_Value;
    public RecordClass()
    {
        A_Value = "";
        B_Value == "":
    }
}

有人可以帮忙吗?

4

1 回答 1

2

听起来你只想要一个内部连接:

 var query = from a in tableA
             from b in tableB
             join c in tableC on new { A_ID = a.ID, B_ID = b.ID } 
                          equals new { c.A_ID, c.B_ID }
             select new RecordClass { A_Value = a.Value, B_Value = b.Value };

编辑:或者,如果您的 LINQ to SQL 模型连接正确,它可能会简单得多:

var query = tableC.Select(c => new RecordClass { A_Value = c.A.Value,
                                                 B_Value = c.B.Value });
于 2012-07-31T22:54:20.880 回答