EF

1)简单查询

后台代码

 using MvcApplication18.Models;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace MvcApplication18.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/
appDBEntities db = new appDBEntities();
public ActionResult Index()
{
SqlParameter[] parameter = { };
List<SecondHand_info> list = db.Database.SqlQuery<SecondHand_info>("select * from SecondHand_info where SecondHand_keyID >88", parameter).ToList();
ViewData["list"] = list;
return View();
} }
}

前台代码

 @model MvcApplication18.Models.SecondHand_info
@using MvcApplication18.Models
@{
ViewBag.Title = "Index";
} @foreach (SecondHand_info item in ViewData["list"] as List<SecondHand_info>)
{
<p>@item.SecondHand_keyID </p>
<p>@item.SecondHand_mobile </p>
<p>@item.SecondHand_title </p>
<p>@item.SecondHand_context </p> }

2)带参数查询

后台代码

 using MvcApplication18.Models;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace MvcApplication18.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/
appDBEntities db = new appDBEntities();
public ActionResult Index()
{
var id = "";
var mobile = "";
var sql = "select * from SecondHand_info where SecondHand_keyID =@id and SecondHand_mobile=@mobile";
List<SecondHand_info> list= db.Database.SqlQuery<SecondHand_info>(
sql,
new SqlParameter("@id",id),
new SqlParameter("@mobile",mobile) ).ToList();
db.SaveChanges();
ViewData["list"] = list;
return View();
} }
}

前台代码

 @model MvcApplication18.Models.SecondHand_info
@using MvcApplication18.Models
@{
ViewBag.Title = "Index";
} @foreach (SecondHand_info item in ViewData["list"] as List<SecondHand_info>)
{
<p>@item.SecondHand_keyID </p>
<p>@item.SecondHand_mobile </p>
<p>@item.SecondHand_title </p>
<p>@item.SecondHand_context </p> }
<h2>Index</h2>

3)修改

后台代码

using MvcApplication18.Models;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace MvcApplication18.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/
appDBEntities db = new appDBEntities();
public ActionResult Index()
{ //修改
List<SecondHand_info> list = db.Set<SecondHand_info>().SqlQuery("select * from SecondHand_info where SecondHand_keyID =88").ToList();
list.Last().SecondHand_mobile = "";//把SecondHand_keyID =88 的手机号改为18017848011
db.SaveChanges();
ViewData["list"] = list;
return View();
} }
}

前台代码

 @model MvcApplication18.Models.SecondHand_info
@using MvcApplication18.Models
@{
ViewBag.Title = "Index";
} @foreach (SecondHand_info item in ViewData["list"] as List<SecondHand_info>)
{
<p>@item.SecondHand_keyID </p>
<p>@item.SecondHand_mobile </p>
<p>@item.SecondHand_title </p>
<p>@item.SecondHand_context </p> }

4)带参数的存储过程(所以字段都要列出不然会出现问题)

 create proc P_QuerybyId_secondhand
@SecondHand_keyID int
as
begin
select SecondHand_keyID, SecondHand_mobile, SecondHand_title, SecondHand_new, SecondHand_type, SecondHand_money, SecondHand_context, SecondHand_pic1, SecondHand_pic2, SecondHand_pic3, SecondHand_pic4, SecondHand_pic5, SecondHand_pic, SecondHand_time, Memo FROM SecondHand_info where SecondHand_keyID=@SecondHand_keyID
end
 using MvcApplication18.Models;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace MvcApplication18.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/
appDBEntities db = new appDBEntities();
public ActionResult Index()
{ var param = new SqlParameter("SecondHand_keyID", );
List<SecondHand_info> list = db.Database.SqlQuery<SecondHand_info>("P_QuerybyId_secondhand @SecondHand_keyID", param).ToList();
db.SaveChanges();
ViewData["list"] = list;
return View();
} }
}
 @model MvcApplication18.Models.SecondHand_info
@using MvcApplication18.Models
@{
ViewBag.Title = "Index";
} @foreach (SecondHand_info item in ViewData["list"] as List<SecondHand_info>)
{
<p>@item.SecondHand_keyID </p>
<p>@item.SecondHand_mobile </p>
<p>@item.SecondHand_title </p>
<p>@item.SecondHand_context </p> }
<h2>Index</h2>

5)带输出参数的存储过程

 CREATE PROCEDURE [dbo].[Myproc]
@Name NVARCHAR(max),
@PageIndex int,
@PageSize INT,
@TotalCount int OUTPUT
as declare @startRow int
declare @endRow int set @startRow = (@PageIndex - 1) * @PageSize + 1
set @endRow = @startRow + @PageSize - 1 select *
FROM
(
select top (@endRow)
ID,
Age,
Name,
row_number() over(order by [ID] desc) as [RowIndex]
from dbo.Student
) as T
where [RowIndex] >= @startRow AND T.Name = @Name SET @TotalCount=(select count(1) as N
FROM dbo.Student WHERE Name = @Name)
 var name = new SqlParameter { ParameterName = "Name", Value = Name };
var currentpage = new SqlParameter { ParameterName = "PageIndex", Value = currentPage };
var pagesize = new SqlParameter { ParameterName = "PageSize", Value = pageSize };
var totalcount = new SqlParameter { ParameterName = "TotalCount", Value = , Direction = ParameterDirection.Output }; var list = ctx.Database.SqlQuery<Student>("Myproc @Name, @PageIndex, @PageSize, @TotalCount output",
name, currentpage, pagesize, totalcount); totalCount = (int)totalcount.Value; /*获得要输出参数totalcount的值*/

MVC 中使用EF的更多相关文章

  1. MVC中使用EF(2):实现基本的CRUD功能

    MVC中使用EF(2):实现基本的CRUD功能 By  Tom Dykstra |July 30, 2013 Translated by litdwg   Contoso University示例网站 ...

  2. MVC中使用EF(1):为ASP.NET MVC程序创建Entity Framework数据模型

    为ASP.NET MVC程序创建Entity Framework数据模型 (1 of 10) By  Tom Dykstra |July 30, 2013 Translated by litdwg   ...

  3. .NET Core2.0 MVC中使用EF访问数据

    使用环境:Win7+VS2017 一.新建一个.NET Core2.0的MVC项目 二.使用Nuget添加EF的依赖 输入命令:Install-Package Microsoft.EntityFram ...

  4. MVC中使用EF增删改查,简单的例子

    //这个是分页数据和总页数类 public class SummaryBase<TModel> { public SummaryBase(); public IList<TModel ...

  5. MVC中使用EF+MySQL

    最近一段时间,想在EF中使用MySQL,于是就进行了测试. 我的环境是VS2013+EF6+MySQL5.7.4 首先要下载MySQL For VisualStudio 1.1.4.Connector ...

  6. MVC中使用EF的技巧集

    1.从数据库生成模型后,再次更新模型时,之前设置的验证规则会丢失. 解决方法:在Models文件夹中新建一个空白类,把它命名为shujuyanzh.cs(类名可以自定),然后把Models中自动生成的 ...

  7. MVC中使用EF:排序,过滤,分页

    原文链接:http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/sorting-filtering-and-paging ...

  8. MVC中使用EF的技巧集(一)

    一.建好数据库后,向项目中添加数据模型. 1.右键点击“Models” 文件夹,选择“添加”,再选择“添加新项”. 2.在“添加新项”窗口,选择左边的“数据”,然后再在右边选择“ADO.NET 实体数 ...

  9. MVC中使用EF的技巧集(二)——分部验证

    1.从数据库生成模型后,再次更新模型时,之前设置的验证规则会丢失. 解决方法:在Models文件夹中新建一个空白类,把它命名为shujuyanzh.cs(类名可以自定),然后把Models中自动生成的 ...

随机推荐

  1. php第三方登陆

    学习之前,请大家先看一下oAuth协议. 首先呢,我们进入QQ互联的官方网站 http://connect.qq.com登入我们自己的QQ号,没有QQ号的小伙伴可以忽略本篇博文分享!

  2. 通过反射封装JDBC

    具体上代码我的BaseDao: public class BaseDao<T> {  private Class clazz;  private Properties pro=null;  ...

  3. CCF考前注意几点

    1.数组最好保持初始化习惯,且检查数组初始化在循环内还是循环外,若在循环内需要对数组进行处理,则数组初始化必须放在for循环内. 2.for循环保持好习惯,用括号括起来,以免粗心. 3.if条件判断要 ...

  4. linux抓包方法

    tcpdump -i eth0 -X -w data.cap 得到的包保存到本地wireshark解析ip.addr == url && http.request.url contai ...

  5. c 语言 结构体

    一:结构体定义结构体类型变量 三种方式1st:先声明结构体类型,再定义该类型的变量struct student liming,zhangle;2nd:声明类型的同时定义变量struct student ...

  6. 有关git的换行符的处理问题

    签入签出时对换行符的操作: #签出时将LF转换为CRLF,签入时将CRLF转换为LF git config --global core.autocrlf true #签出时不转换,签入时转换为LF g ...

  7. LR Socket 测试demo

    建议像我这样最开始未接触过的,还是先从简单录制开始.录制完之后,分析测试脚本,再学习,再自己根据需要编写测试脚本. 第一:录制. A.    B. 选择需要录制的exe的目录 ,填写完后点击ok. C ...

  8. 《zw版·delphi与halcon系列原创教程》zw版_THOperatorSetX控件函数列表 v11中文增强版

    <zw版·delphi与halcon系列原创教程>zw版_THOperatorSetX控件函数列表v11中文增强版 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就 ...

  9. sql语句中where和having的区别

    WHERE语句在GROUPBY语句之前:SQL会在分组之前计算WHERE语句. HAVING语句在GROUPBY语句之后:SQL会在分组之后计算HAVING语句.

  10. 【海岛帝国系列赛】No.5 海岛帝国:独立之战

    50229234海岛帝国:独立之战 [试题描述] 恐怖分子多年来一直如饥似渴地渴求“药师傅”帝国,但是,“里脊肉”BANNIE时刻在守护着这一方水土.从而使帝国日益强大.如今,BANNIE由于在 “牡 ...