//
// GET: /Home/
TestTryEntities Db = new TestTryEntities(); public ActionResult Index()
{
return View();
} /// <summary>
/// 查询
/// </summary>
/// <returns></returns>
public ActionResult GetStudent()
{
int pageIndex = 1;//页码
int pageSize = 10;//每页条数
//var data = Db.Student.OrderBy(r => r.ID)
// .Skip(pageSize * (pageIndex - 1)).Take(pageSize)
// .Select(r => new { r.ID, r.Name, r.Password }); var data1 = (from r in Db.Student
join t in Db.Class on r.ClassID equals t.ID
orderby r.ID
select new { r.ID, r.Name, r.Password, t.ClassName })
.Skip(pageSize * (pageIndex - 1)).Take(pageSize); int total = Db.Student.Count();//总条数
//构造成Json的格式传递 var result = new { total = total, rows = data1 };
return Json(result, JsonRequestBehavior.AllowGet);
} //添加
public ActionResult Add()
{
var data = Db.Class.Select(r => new SelectListItem()
{
Text = r.ClassName,
Value = SqlFunctions.StringConvert((double)r.ID)
}).ToList(); ViewData["Class"] = data;
return View(); }
[HttpPost]
public ActionResult Add(Model.Student model)
{
Db.Student.Add(model);
Db.SaveChanges();
return View("Index");
} /// <summary>
/// 修改
/// </summary>
/// <param name="ID"></param>
/// <returns></returns>
public ActionResult Edit(int ID)
{
var model = Db.Student.Where(r => r.ID == ID).Select(r => r).FirstOrDefault();
ViewData["modelStudent"] = model; var data = Db.Class.Select(r => new SelectListItem()
{
Text = r.ClassName,
Value = SqlFunctions.StringConvert((double)r.ID),
Selected = (r.ID == model.ClassID)
}).ToList();
ViewData["Class"] = data;
return View(model);
} [HttpPost]
public ActionResult Edit(Model.Student model)
{
Db.Student.Attach(model);
Db.Entry<Student>(model).State = System.Data.EntityState.Modified; if (Db.SaveChanges() > 0)
{
return Content("OK");
}
else
{
return Content("修改失败");
}
} /// <summary>
/// 删除
/// </summary>
/// <param name="ID"></param>
/// <returns></returns>
public ActionResult Delete(int ID)
{
//var model = Db.Student.Where(r => r.ID == ID).Select(r => r).FirstOrDefault();
//if (model == null)
//{
// return Script("alert('验证失败!)");
// return View("Index");
//}
//Db.Student.Remove(model);
//Db.SaveChanges(); var model1 = new Model.Student() { ID = ID };
if (model1 == null)
{
return View("Index");
}
Db.Student.Attach(model1);
Db.Entry<Student>(model1).State = System.Data.EntityState.Deleted;
Db.SaveChanges(); return View("Index");
} public ActionResult AddMulti()
{ return View();
} [HttpPost]
public ActionResult AddMulti(Mvctry.Models.ClassStudent model)
{ return View();
}
}

  

MVC TO LINQ的更多相关文章

  1. 二:MVC之LINQ查询语法

    LINQ(Language Integrated Query)语言集成查询是一组用于c#和Visual Basic语言的扩展.它允许编写C#或者Visual Basic代码以操作内存数据的方式,查询数 ...

  2. mvc ef LINQ to Entities 不识别方法“Int32 Parse(System.String)”,因此该方法无法转换为存储表达式。

    private sys_User GetUserInfo() { sys_User model = null; var userId = Convert.ToInt32(AccountHelper.G ...

  3. 探讨mvc下linq多表查询使用viewModel的问题

    最近在开发mvc3的时候发现了一个问题,就是如何在view页面显示多表查询的数据,最简单的办法就是使用viewmodel了,以下本人使用viewmodel来实现多表查询的3中方法, 先贴代码再说: 1 ...

  4. 【C#】MVC+EF+LINQ 综合小项目

    第一,创建数据库 create table category(id int primary key,name nvarchar(20)) create table news(id int primar ...

  5. mvc使用linq to sql进行sum统计遇到查询为null的问题

    mvc linq to sql,linq to entity,sum,null 昨天写了段sum的统计语句, decimal sums sums = ( from fac in db.Apply wh ...

  6. MVC NPOI Linq导出Excel通用类

    之前写了一个模型导出Excel通用类,但是在实际应用中,可能不是直接导出模型,而是通过Linq查询后获取到最终结果再导出 通用类: public enum DataTypeEnum { Int = , ...

  7. MVC中Linq to sql创建数据模型

    1.创建新的 SQL Server 数据库 点击”视图“-->“服务器资源管理器” ,打开 “服务器资源管理器” 窗口,如下图: 右键“数据连接”,选择“创建新的SQL Server 数据库”, ...

  8. ASP.NET MVC 解决LINQ表达式中的SqlMethods 未找到命名空间问题

    右键项目属性下的引用: 添加引用: 搜索寻找——System.Data.Linq,然后添加成功,即可解决LINQ表达式中的SqlMethods 未找到命名空间问题

  9. MVC +EF+linq 多表联查

    关于linq的多表联查效果的实现: 后台多表查询  内连接: SELECT [Extent2].[partID] AS [partID], [Extent1].[userName] AS [userN ...

  10. .NET MVC+ EF+LINQ 多表联查VIEW显示列表

    1.VIEW 页面显示代码 <link href="~/Content/bootstrap.css" rel="stylesheet" /> < ...

随机推荐

  1. oracle创建user具体指示

    一个.用户的概念 用户,这是user,通俗的讲就是参观oracle数据库"人".在oracle在.的各种安全参数的用户可控制,为了保持数据库的安全性,的概念包括模型(schema) ...

  2. java_Timer_schedule jdk自带定时器

    定时器经常在项目中用到,定制执行某些操作,比如爬虫就需要定时加载种子等操作,之前一直用spring的定制器近期做项目发现,jdk有很简单的提供 代码如下 1 /* * Copyright (c) 20 ...

  3. Android结构分析Android智能指针(两)

    笔者:刘蒿羽 博客:http://blog.csdn.net/liuhaoyutz Android版本号:4.4.2 在上一篇文章中,我们分析了Android智能指针中的强指针sp,本文我们来分析弱指 ...

  4. c# 官方命名规则

    官方的哦. https://msdn.microsoft.com/zh-cn/library/vstudio/ff926074(v=vs.110).aspx

  5. bootstrap-wysiwyg 结合 base64 解码 .net bbs 图片操作类 (二) 图片裁剪

    图片裁剪参见: http://deepliquid.com/projects/Jcrop/demos.php?demo=thumbnail        一个js插件 http://www.mikes ...

  6. Android Bluetooth Stack: Bluedroid(五岁以下儿童):The analysis of A2DP Source

    1. A2DP Introduction The Advanced Audio Distribution Profile (A2DP) defines the protocols and proced ...

  7. 红米1S Mokee4.4.4 本人编译版耳机线控改动调音量以及上下曲方法

    改动的文件为,用Re管理器编辑: system/usr/keylayout/msm8226-tapan-snd-card_Button_Jack.kl 默认的耳机线控的上下键是切换上下曲功能,因此此文 ...

  8. sqlserver备份的几种方式

    1.用sqlserver的维护计划 在这里我就不给截图演示了,这个比较简单,无非就是通过sqlserver自己的维护计划拖拽出2个一个‘备份数据库’任务和一个‘清除维护’任务. 需要注意的点: 1)有 ...

  9. td中的值自动换行

    设置td中的值自动换行在<td ></td> 中加上这样一句代码,可以简省设置,使长字符串换行.而不用设置width,height. style="word-wrap ...

  10. erlang mnesia数据库简单应用

    mnesia是erlang自带的分布式数据库,基于ets和dets实现的.mnesia兼顾了dets的持久性和ets的高性能,可以自动在多个erlang节点间同步数据库.最关键的是,mnesia实现了 ...