创建实体:
  public class User
{
public string UserID { get; set; }
public string UserName { get; set; }
public string Password { get; set; }
[Description("测试")]
public string UserGroupId { get; set; }
public UserGroup UserGroup { get; set; }
public List<Role> Roles { get; set; }
} public class UserGroup
{
public string GroupID { get; set; }
public string GroupName { get; set; }
public List<User> Users { get; set; }
} public class Role
{
public string RoleID { get; set; }
public string RoleName { get; set; }
public List<User> Users { get; set; }
}
2.2、准备SQL数据
--新增数据
 alter PROC createData
@rowNum INT
AS
DECLARE @index INT =,@id VARCHAR()=NEWID()
INSERT dbo.UserGroups
( GroupID, GroupName )
VALUES ( @id, -- GroupID - nvarchar()
N'开发组' -- GroupName - nvarchar(max)
)
WHILE(@index<=@rowNum)
BEGIN
INSERT dbo.Users
( UserID ,
UserName ,
Password ,
UserGroupId
)
VALUES ( NEWID(),
N'张三' , -- UserName - nvarchar(max)
N'' , -- Password - nvarchar(max)
@id -- UserGroupId - nvarchar()
)
SET @index=@index+
END
--删除数据
alter PROC DeleteData
AS
BEGIN
TRUNCATE TABLE dbo.Users
END
--修改数据
ALTER PROC ModifyData
@uid VARchar(50),
@userName varchar(50)
AS
BEGIN
UPDATE dbo.Users SET UserName=@userName WHERE UserID=@uid
END
--查找数据
ALTER PROC GetLlist
@rowNumber int
AS
BEGIN
SELECT * FROM ( SELECT ROW_NUMBER() OVER(ORDER BY UserID) AS ID,* FROM dbo.Users ) AS A WHERE A.ID<=@rowNumber
END
 
2.3C#代码调用实例
2.3.1 查询列表
 var db = new TestDbContext();
SqlParameter[] parameter = new SqlParameter[];
parameter[] = new SqlParameter("@rowNumber", );
var users = db.Users.SqlQuery("exec GetLlist @rowNumber", parameter).ToList();
2.3.2  返回有参数的存储过程
 var db = new TestDbContext();
int count = db.Database.SqlQuery(typeof(int),"exec ProSelectCount").Cast<int>().FirstOrDefault();
 
2.3.3  增删查改
 
var db = new TestDbContext();
SqlParameter[] parameter = new SqlParameter[1];
parameter[0] = new SqlParameter("@rowNum", 5);
db.Database.ExecuteSqlCommand("exec CreateData @rowNum", parameter);
 
 
 
 

EF调用存储过程实例的更多相关文章

  1. 转:EF调用存储过程、函数

    EF调用存储过程.函数 2014-04-02 09:12:20|  分类: ORM框架|举报|字号 订阅          一.ef4.1 codeFirst 修改表结构 增加字段等 EF code ...

  2. 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法

    一. 背景 上一个章节,介绍了EF调用两类SQL语句,主要是借助 ExecuteSqlCommand  和 SqlQuery 两个方法来完成,在本章节主要是复习几类存储过程的写法和对应的EF调用这几类 ...

  3. ASP.NET MVC深入浅出(被替换) 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery ) 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性) 第十节: EF的三种追踪

    ASP.NET MVC深入浅出(被替换)   一. 谈情怀-ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态 ...

  4. EF调用存储过程、函数

    一.ef4.1 codeFirst 修改表结构 增加字段等 EF code first需要重新生成库导致数据丢失的问题 说这个问题前 首先先说下 我使用ef4.1 codefirst的目的. 是因为可 ...

  5. .NET MVC+ EF+调用存储过程 多表联查以及VIEW列表显示

    直接上干活,至于网上的一大堆处理方式不予评论,做好自己的就是最好的,供大家不走弯路 1.view页面 <link href="~/Content/bootstrap.css" ...

  6. EF调用存储过程查询表中的部分字段,报数据读取器与指定的“AdventureWorksDWModel.Student”不兼容。某个类型为“Age”的成员在同名的数据读取器中没有对应的列。

    实现功能:查询单张表Student中返回指定的列 一:数据库表结构: 二:存储过程: USE [AdventureWorksDW] GO /****** Object: StoredProcedure ...

  7. 关于MVC 中EF调用存储过程

    Entity Framework 4.3 中使用存储过程 分类:ASP.NET MVC 3, ASP.NET                  0                   尽管 Entit ...

  8. 关于EF调用存储过程那点事...

    最近研究了下EF怎么调用 数据库的分页存储过程,发现还是很不错的 1.数据库存储过程如下,一个简单的不含条件判断的 2.然后新建数据模型中选择存储过程: : 3.EF会自动生存一个返回复杂类型(Obj ...

  9. EF调用存储过程遇到的问题

    注意 实体类Statistics的字段名和存储过程返回集合的列名要相同才行

随机推荐

  1. ET 与RETI 基于51单片机中断跳出指令“RETI”浅议

    最近在基于51单片机编程的过程中出现了个很奇怪的问题“程序执行中在寄存器EA=1,ET0=1,TR0=1条件下,单TF0=1时并没有执行中断”.在有过单片机中断编程经历者都知道当EA=1,ET0=1的 ...

  2. windows完全支持C++11的轻量级编译器(官网MinGW和非官方的MinGW-builds)

    作者:网事如风链接:https://www.zhihu.com/question/22923569/answer/23172337来源:知乎著作权归作者所有,转载请联系作者获得授权. 完全支持C++1 ...

  3. 《Programming WPF》翻译 第8章 4.关键帧动画

    原文:<Programming WPF>翻译 第8章 4.关键帧动画 到目前为止,我们只看到简单的点到点的动画.我们使用了To和From属性或者By属性来设计动画--相对于当前的属性值.这 ...

  4. PowerShell_零基础自学课程_9_高级主题:静态类和类的操作

    上次我们说到了,wmi对象和com组件,今天我们继续来看PS中对象的相关内容.主要说一下静态对象和对象的基本操作. 一.静态对象 在PS中有一类特殊的对象,我们不能同过这些类创建新的对象,这些类是不能 ...

  5. 【转】使用adb命令对手机进行截屏(截图)保存到电脑,SDCard

    原文网址:http://blog.csdn.net/huangyabin001/article/details/29198367 adb shell /system/bin/screencap -p  ...

  6. 【转】Linux中history历史命令使用方法详解

    原文网址:http://os.51cto.com/art/201205/335040.htm 当你在玩Linux的时候,如果你经常使用命令行来控制你的Linux系统,那么有效地使用命令历史机制将会使效 ...

  7. javascript遍历Json对象个数

       var data={};     for (var d in data) {         $(data[d]).each(function (i, e) {             aler ...

  8. 如何在自定义Listener(监听器)中使用Spring容器管理的bean

    正好以前项目中碰到这个问题,现在网上偶然又看到这个问题的博文,那就转一下吧. 原文:http://blog.lifw.org/post/46428852 感谢作者 另外补充下:在web Server容 ...

  9. mycat实例(3)

    配置MyCat 4. 配置schema.xml schema.xml里面管理着MyCat的逻辑库.表,每张表使用的分片规则.分布在哪个DataNode以及DataSource上. 之前的例子: < ...

  10. 奇妙的go语言(聊天室的开发)

    [ 声明:版权全部,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 这是一篇关于聊天室开发的博客,原来文章的地址来自于此.这篇文章非常具有代表性,对于代码中的函数 ...