//
// 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. 远程数据client交换器

    不太繁忙的文本. 要被写入

  2. WebApi路由及版本控制

    public class WebApiControllerSelector : IHttpControllerSelector { private const string NamespaceKey ...

  3. &lt;七&gt;阅读&lt;&lt;大话设计模式&gt;&gt;该模板模型

    哈哈,没想到.在不知不觉中拥有第七书面文章,看来我仍然非常有毅力. 上坚持一件事非常easy,仅仅要你每天不断的朝着自己的目标出发,不论什么事情都不会挡着你.好了大道理不多说,谁都懂.那看看这个模板模 ...

  4. git合并远端分支到本地分支的两种方式

    作者:zhanhailiang 日期:2014-11-21 在使用版本号工具提交改动之前,都须要通过update先将本地代码更新到最新版本号.SVN通过svn update就能够实现,那么git怎样实 ...

  5. C# 复习(1) 委托与事件

    委托定义顺序 1. 声明一个委托 2.定义一个委托变量 3. 委托变量的初始化或者给委托变量绑定一个方法 4.调用委托 事件:事件是对委托的封装. 事件只能在创建事件的类的内部调用. public c ...

  6. 使用OpenCV玩家营造出一个视频控制(没有声音)

    说明:OpenCV计算机视觉库,所以使用的图像或视频处理,因此,没有任何声音在播放视频的临时 软件:使用OpenCV制播放器(无声音) 功能说明:新建播放窗体.加入进度条能够拖动视频播放. 流程图: ...

  7. python向mysql中存储JSON及Nodejs取出

    虽然把JSON数据存入mysql也是比较蛋疼,但是相比使用Nodejs嵌套处理多个mysql查询并拼接返回数据也算是没mongo时的一个折中方案了. 我使用python拼接了一个json格式的字符串, ...

  8. OCP-1Z0-051-题目解析-第11题

    11. View the Exhibit and examine the structure of the PRODUCTS table.All products have a list price. ...

  9. [Android] Volley源代码分析(五岁以下儿童)Q \\ u0026一个

    Volley源代码分析系列那里一段时间,告诉我,有许多私人留言,同时一些问题抛出.对于一些简单的问题,我们跳,这两天被连接到朋友@smali提出的问题.告诉我你不得不赞叹查看源代码时的详细程度,大家一 ...

  10. 点击按钮,通过JS代码实现复制INPUT表单,表格:

    获取表单: <SCRIPT LANGUAGE="JavaScript"> function copyinput() { var input=document.getEl ...