这是我在lambda中的inner join的方式,

var myObject = tableNames.Join(tableSchool,  x => x.sID , s => s.schoolID ,
( (x,s) => new {   }  ) ).ToList();


我在tableNamestableSchool中都有很多字段。
通过我的lambda查询,如果我在tableNames中有10个字段,我必须写下10次在new { }中的所有10个字段。
我想知道的是如何选择tableName表的所有字段和tableSchool中的一个字段。



tableName     tableSchool
---------     ------------
Nfield1       Sfield1
Nfield2       Sfield2
Nfield3       Sfield3
Nfield4
Nfield5


我想从tableName获取所有字段,而从tableShcool仅获取一个字段(Sfield1)。我想将此数据源绑定到asp:GridView :)

最佳答案

如果您想要两个表的详细信息,则可以:

List<AllDetails> myObject = tableNames.Join(tableSchool, x => x.sID, s => s.schoolID, ((x, s) => new AllDetails(x, s))).ToList();


哪里:

public class AllDetails
    {
        private TableName tabName;
        private TableSchool tabSchool;

        public AllDetails(TableName tableName, TableSchool tableSchool)
        {
            //Assign fields here
        }
}

09-17 19:58