linq中如何在join中指定多个条件

本文介绍了一个使用C#中的匿名类型和LINQ进行数据库查询的例子。通过将多个表连接在一起,并选择特定字段组成匿名类型返回,实现了复杂数据的获取。此方法常用于Web应用程序中动态构建视图。

借助于匿名类型:

 public ActionResult Edit(int id)
        {
            using (DataContext db = new DataContext(ConfigurationManager.ConnectionStrings["sqlConnection"].ConnectionString))
            {
                IQueryable<ClassInformation> result = from c in db.GetTable<TClass>()
                                                      join t in db.GetTable<TTeacher>()
                                                      on new { id = c.ID, id1 = c.ID }
                                                      equals new { id = t.ClassID, id1 = id }
                                                      select new ClassInformation { ID = c.ID, ClassID = t.ClassID, Name = c.Name, TeacherName = t.Name, Address = t.Address, Phone = t.Phone, Email = t.Email };
                ClassInformation k = result.Single();
                ViewData["K"] = k;
                return View();


            }

        }

 

其实和解决按多条件分组的思路是一样的。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值