MVC+Linq+EF笔记
using (DataContext ctx = new DataContext())
{
/*foreach (var item in ctx.employees)
{
ViewData["Name"] = item.Name;
}
*/
//------------------------------------------
/*var employees = from emp in ctx.employees
where emp => emp.Age == 22 && emp.ID == "123456781"
select emp;
//上边转化
var employees = ctx.employees.Where(emp => emp.Age == 22 && emp.ID == "123456781");
foreach (var item in employees)
{
ViewData["Name"] = item.Name;
}--------------------------------------------*/
/*---------------------------------------
* var employees = from emp in ctx.employees
where emp.Age == 22 && emp.ID == "123456781"
select emp.Name;//查询单个字段
var employees = ctx.employees.Where(emp => emp.Age == 22 && emp.ID == "123456781")
.OrderBy(emp => emp.ID)
.Select(emp => emp.Name);//查询单个字段
//---------------------------------------------------
var employees2 = from emp in ctx.employees
where emp.Age == 21
select new { emp.Age, emp.Name };//查询多个字段*/
/*var employees2 = ctx.employees
.Where(emp => emp.Age == 21)
.OrderBy(emp => emp.Age)
.Select(emp => new { emp.Name, emp.Age });//查询多个字段
//----------------------------------------------
/不管怎样都要用foreach、
foreach (var item in employees)
{
ViewData["single"] = item;//因为它查出来是单个字段,所以直接输出,不用点了
}
foreach (var item in employees2)
{
ViewData["doubleAge"] = item.Age;
ViewData["doubleName"] = item.Name;//他很智能的。
}
//------------------------------------
var employees = ctx.employees.Find("123456781");
if (employees != null)
{
ViewData["df"] = employees;
}
//加载数据到内存中,加载完了就可以用Local了
ctx.employees.Load();
var employees = from employee in ctx.employees.Local select employee;
foreach (var item in employees)
{
ViewData["fsdf"] = item;
}
//inclue 贪婪查询。
var employees = ctx.employees.Include(p => p.department);
foreach (var item in employees)
{
ViewData["dep"] = item.department.DepName;
ViewData["empName"] = item.Name;
}*/
var employees = ctx.employees.Include(emp=>emp.department).ToList();//查询列表
ViewData.Model = employees;
return View();
外键数据保存:
public ActionResult AddHandler(int droplist, Employee emp)
{
using (DataContext dbcontext=new DataContext ())
{
int did = droplist;
Department dep = new Department();
dep = dbcontext.dempartments.Find(did);//先找到外键实体
emp.department = dep;//因为emp中外键是一个实体,所以你要给实体,不能只给ID外键。
dbcontext.employees.Add(emp);
dbcontext.SaveChanges();
return RedirectToAction("List");
}
}
}
MVC+Linq+EF笔记的更多相关文章
- mvc+linq+EF对数据表的查删改
/// <summary> /// 查询数据库中学生姓名 /// </summary> /// <returns></returns> public A ...
- MVC教程--MiniProfiler.EF监控调试MVC和EF的性能
上一篇谈到mvc中ef输出执行sql日志:来谈用mvc开发项目的调试和性能监控.EF框架自动给我生成sql语句,当我们的程序遇到性能问题的时候我们可以用MiniProfiler.EF来监控调试MVC和 ...
- ASP.NET Core快速入门(第6章:ASP.NET Core MVC)--学习笔记
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务40:介绍 1.Individual authentication 模板 ...
- ASP.NET Core MVC 网站学习笔记
ASP.NET Core MVC 网站学习笔记 魏刘宏 2020 年 2 月 17 日 最近因为” 新冠” 疫情在家办公,学习了 ASP.NET Core MVC 网站的一些知识,记录如下. 一.新建 ...
- 翻译:使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 3
原文地址:http://ddmvc4.codeplex.com/ 原文名称:Design and Develop a website using ASP.NET MVC 4, EF, Knockout ...
- 翻译:使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 1
原文地址:http://ddmvc4.codeplex.com/ 原文名称:Design and Develop a website using ASP.NET MVC 4, EF, Knockout ...
- ASP.NET MVC和EF集成AngularJS开发
参考资料: 如何在ASP.NET MVC和EF中使用AngularJS AngularJS+ASP.NET MVC+SignalR实现消息推送 [AngularJs + ASP.NET MVC]使用A ...
- 1、MVC和EF中的 Model First 和 Code First
准备:先引入MVC和EF的dll包 *命令方法:打开工具——库程序包管理器——程序包管理器控制台,选择自己的项目 a) Install-Package EntityFramework -Ver ...
- 使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 6 - 业务逻辑
翻译:使用 ASP.NET MVC 4, EF, Knockoutjs and Bootstrap 设计和开发站点 - 6 - 业务逻辑 Part 3: 设计逻辑层:核心开发 如前所述,我们的解决方案 ...
随机推荐
- CrystalReport runtime的下载地址
SAP网站的东西实在太多了,找个CrytalReport都费劲.13.*版的可以通过下面的地址下载: SAP Crystal Reports, developer version for Micros ...
- 关于调用notifyDataSetChanged刷新PullToRefreshListView列表无反应解决办法
文章转载自:关于调用notifyDataSetChanged刷新PullToRefreshListView列表无反应解决办法 | TeachCourse
- 用JAVA 的for循环输出 菱形
public class For{ public static void main(String[] args){ //首先.把菱形看成上下两部分,上五下四,所以,第一个for循环有5次,第二个for ...
- git 从远端拉取指定分支和推送本地某个分支到远端
如题,可以直接从远端拉取某个分支,也可以直接将本地某个分支推送到远端. 原文链接:https://www.cnblogs.com/hamsterPP/p/6810831.html
- node js 安装.node-gyp/8.9.4 权限 无法访问
WARN EACCES user "root" does not have permission to access the dev dir "/root/.jenkin ...
- win下发现两个有用的快捷键
调出命令行工具:win+x然后a.默认是cmd的管理员模式,可以改成powershell. 从当前目录打开命令行:shift + 鼠标右键
- 灰色大气企业html5模板
灰色大气企业html网页模板是一款以灰色为背景的大气简洁企业html5网站模板. 下载地址:http://www.huiyi8.com/sc/10860.html
- Linus Torvalds: 成功的项目源于99%的汗水与1%的创新
2017年2月15日,在加利福尼亚州的开源领袖峰会上,由Linux基金会执行董事Jim Zemlin进行的一次采访中,Torvalds讨论了他如何管理Linux内核的开发以及他对工作的态度. Linu ...
- ISO文件怎么安装
iso是光盘映像文件,打开iso文件有几种方法:1.使用光盘映像工具软件或者虚拟光驱才能打开iso文件.像软碟通(UItraISO)就是一个很好的光盘映像工具软件,使用它就可以打开iso文件,提取里面 ...
- zepto.fullpage
内容来自:颜海镜 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...