tnblog
首页
视频
资源
登录

.NET MVC 中lamdba实现left join

7174人阅读 2019/10/17 17:50 总访问:126106 评论:0 收藏:0 手机
分类: .NET MVC

1、left join 用GroupJoin来实现,join的返回结果为一对一,GroupJoin返回结果为一对多,相当于集合中还有集合

  1.         public ActionResult Index()
  2.         {
  3.             //left join (lamdba写法)
  4.             var result = oae.userinfo.GroupJoin(oae.noteinfo, a => a.userId, b => b.userId, (u, n) => new
  5.             {
  6.                 userName = u.userName,
  7.                 notes = n
  8.             }).SelectMany(a => a.notes.DefaultIfEmpty(), (a, b) => new
  9.             {               userName = a.userName,
  10.                 noteRemark = b.noteRemark
  11.             }).ToList();
  12.             
  13.             List<users> list = new List<users>();
  14.             foreach (var item in result)
  15.             {
  16.                 users user = new users();
  17.                 user.userId = item.userId;
  18.                 user.userName = item.userName;
  19.                 user.noteRemark = item.noteRemark;
  20.                 list.Add(user);
  21.             }
  22.             ViewBag.count = list.Count;
  23.             return View(list);
  24.             
  25.         }

a为上一次返回结果,b为前一个表,SelectMany方法返回一个实体集合,再把返回结果解析到一个具体的实体集合,再返回给前台,在前台就可以显示数据了。(自我理解)


评价

.net MVC分部页,.net core分部页

.net分部页的三种方式第一种:@Html.Partial(&quot;_分部页&quot;)第二种:@{ Html.RenderPartial(&quot;分部页&quot;);}...

.net MVC 登录后跳回原来的页面

把当前连接传递到登录界面,然后登录后根据那个连接跳转回来就好跳转前可以使用Request.Url获取当前页面的地址:&lt;ahref=...

asp.net MVC @helper用法

@helper可以在视图定义一个公共块,这样就可以实现代码的重复调用下面来一个很简单的例子:就是输出一个list的数据。实际项...

ASP.net MVC从请求到响应发生了什么

先就贴一张图哦在来一张

.net MVC 使用百度编辑器详细教程:(1)配置编辑器

一、什么是百度编辑器百度编辑器UEditor是由百度web前端研发部开发一款应用于网站的编辑器,具有轻量,可定制,注重用户体...

Asp.net MVC 利用(aspose+pdfobject.js) 实现在线预览office文档

Aspose.Total是Aspose公司旗下的最全的一套office文档管理方案,通过它,我们可以有计划地操纵一些商业中最流行的文件格式...

asp.net MVC 下载文件

方法1:publicvoidDownLoad() { stringfilePath=&quot;文件路径&quot;; using(FileStreamfs=newFileStream(filePath,Fil...

ASP.net MVC + WebUploader+BootStrap实现文件上传进度条显示

引入需要的资源文件:&lt;scriptsrc=&quot;~/Content/jquery-1.9.1.min.js&quot;&gt;&lt;/script&gt; &lt;linkhref=&quot;...

ASP.net MVC + WebUploader实现文件上传二:使用的一些问题

如何把文件选择按钮换成自己的因为WebUploader设置关联的上传id会有他的样式,有时候想换成自己的开始想的是添加自己的文件...

ASP.net MVC 模型验证

MVC自带有模型验证,它是通过System.ComponentModel.DataAnnotations命名空间完成。 我们要做的只是给Model类的各属性加上...

asp.net MVC过滤器

过滤器简介:面向切面的编程方式可以实现不改动原有逻辑的基础上添加自己的逻辑使用的时候添加一个配置即可,不想用的时候...

ASP.net MVC Controller接收ajax post方式发送过来的json对象或数组数据

1、将json数组或者json对象用JSON.stringify()方法序列化成字符串,再将字符串提交到后台。varstuarr=newArray();//创建一...

.net MVC json对象或者json对象数组的序列化和反序列化(一)

1、用JSON.stringify()将对象stuarr或者json数组stuarr序列化成字符串,然后提交给后台。$.post(&quot;/home/DoUpdate&quot...

.net MVC json对象或者json对象数组的序列化和反序列化(二)

1、用JSON.stringify()将对象stuarr或者json数组stuarr序列化成字符串,然后提交给后台。$.post(&quot;/home/DoUpdate&quot...

.net MVC EF框架left join的SelectMany原理

下列代码为实现Left join 查询数据库,如果在调用SelectMany方法之前已经ToList,返回之后就结束操作数据库了,SelectMany ...
网络上你重拳出击,现实中你刚上初一
排名
27
文章
20
粉丝
11
评论
5
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术
迎着风,拥抱彩虹!