Microsoft宣布Entity Framework 6 Alpha 3已 经可以下载了,它现在支持通过Fluent API将Code First映射到对应的新增、修改和删除功能的存储过程;添加了连接恢复功能;包含了来自iceclow和UnaiZorrilla的pull request内容;并添加了新的DbContext的API,以允许你管理自己的事务。

根据Microsoft所说,这三种存储过程在创建时需要遵循类似于<type_name>Insert,<type_name>Update 及<type_name>_Delete这样的格式。另外,方法的参数名称需要和属性名称相对应,新增和修改的存储过程需要为每个属性创建一 个对应的参数,除了那些标记为ID(Identity)及计算所得的属性。而删除的存储过程则需要为实体(entity)的主键值创建一个对应的参数。
让我们看一看以下代码片段:

public class Blog
{ public int BlogId { get; set; } public string Name { get; set; } public string Url { get; set; }
}

对应以上代码的新增存储过程看起来应该是以下这样:

CREATE PROCEDURE [dbo].[Blog_Insert] @Name varchar(max), @Url varchar(max)
AS INSERT INTO [dbo].[Blogs] ([Name], [Url])VALUES (@Name, @Url)SELECT SCOPE_IDENTITY() AS BlogId    

修改和删除的存储存储过程则按照如下方式编写:

CREATE PROCEDURE [dbo].[Blog_Update]  @BlogId int, @Name varchar(max), @Url varchar(max)
AS UPDATE [dbo].[Blogs]   SET [Name] = @Name, [Url] = @Url WHERE BlogId = @BlogId;
CREATE PROCEDURE [dbo].[Blog_Delete]@BlogId int
ASDELETE FROM [dbo].[Blogs]WHERE BlogId = @BlogId    

官方文档详细地介绍了所有可能的场景细节。

Entity Framework 6 Alpha 3加入了连接恢复功能,能够从短暂的连接失败中自动恢复。它的实现使用了IExecutionStrategy接口,而在其中的具体实现又使用到了IRetriableExecutionDector及IRetryDelayStrategy接口。

根据官方信息来源,Entity Framework将包含4个执行策略(Execution Strategy),分别为 NonRetryingExecutionStrategy,DefaultSqlExecutionStrategy,ExecutionStrategy 和SqlAzureExecutionStrategy。

Entity Framework Alpha 3提供了一项功能,它是来自iceclow提交的一个pull request,允许你创建定制化的数据迁移操作,并在一个定制化迁移SQL脚本生成器中处理这些操作。Microsoft ADO.NET Entity Framework的项目经理Rowan Miller已经通过相关的代码示例介绍了iceclow的实现方式。

Alpha 3也允许你使用来自UnaiZorrilla所 提交的pull request,它提供了一个可插式的复数化与单数化的服务。另一项所包含的功能是允许你通过使用 DbContext.Database.UseTransaction及DbContext.Database.BeginTransaction API管理你自己的事务。

转载于:https://www.cnblogs.com/shihao/archive/2013/03/05/2945284.html

Entity Framework 6 Alpha 3为Code First提供对存储过程支持,并提供连接恢复功能相关推荐

  1. Entity Framework 5.0系列之Code First数据库迁移

    我们知道无论是"Database First"还是"Model First"当模型发生改变了都可以通过Visual Studio设计视图进行更新,那么对于Cod ...

  2. ADO.NET Entity Framework -Code Fisrt 开篇(一)

    ADO.NET Entity Framework 是微软的一套实体映射框架.发布EF4.1(Entity Framework )时,又提出了代码先行的设计理念(the code comes first ...

  3. Entity Framework(EF的Code First方法)

    EntityFramework,是Microsoft的一款ORM(Object-Relation-Mapping)框架.同其它ORM(如,NHibernate,Hibernate)一样, 一是为了使开 ...

  4. 关于Entity Framework自动关联查询与自动关联更新导航属性对应的实体注意事项说明...

    一.首先了解下Entity Framework 自动关联查询: Entity Framework 自动关联查询,有三种方法:Lazy Loading(延迟加载),Eager Loading(预先加载) ...

  5. ASP .NET MVC 之Entity Framework入门教程及源码

    本文主要的目的是 1. 说明Entity Framework Power Tools如何使用. 2. Entity Framework  快速门 实验环境: OS: Windows Server 20 ...

  6. LINQ TO SQL和Entity Framework 的关系 你了解多少?

    1. LINQ  TO SQL 和EF 特点:  LINQ TO SQL和Entity Framework都是一种包含LINQ功能的ORM 也就是所谓的关系对象的映射.其中包括的有DBFrist  C ...

  7. [转]Entity Framework 4.1 正式版发布

    [转]Entity Framework 4.1 正式版发布 Entity Framework 4.1 正式版发布 投递人 itwriter发布于 2011-04-12 21:52 在MIX 11前夕, ...

  8. MVC3学习第六章 排山倒海第二变----使用 Entity Framework Code-First 进行数据访问

    本章学习内容 1.Entity Framework 4.1介绍 2.Entity Framework Code-First 进行数据访问 3.利用EF实现用户的增加和列表功能 1.Entity Fra ...

  9. Entity Framework 学习

    Entity Framework 学习初级篇1--EF基本概况... 2 Entity Framework 学习初级篇2--ObjectContext.ObjectQuery.ObjectStateE ...

最新文章

  1. 贪吃蛇计时器怎么编写java_java编写简易贪吃蛇游戏
  2. [导入]Actual Windows Manager 3.7
  3. java checked异常有那些,java checked exceptions
  4. mysql ddl分类_MySQL语言分类——DDL
  5. Java基础视频笔记(四):泛型
  6. 在GitHub上分享和展示你的代码
  7. python sklearn 梯度下降法_Python- sklearn之梯度下降算法原理
  8. C++调用 Json解析与处理库
  9. java8时间类的好处_Java8——时间类
  10. Windows下GDAL3.1.2编译 (VS2015)
  11. Atitit spring springboot 集成mybatis法 目录 1.1. 使用spring管理数据源。。需要修改spring、 配置 1 1.2. 直接代码集成,无需修改任何配置 1
  12. Swoole MySQL 连接池的实现
  13. android木马的制作方法,实现木马病毒的详细步骤
  14. android 4.4 5.1.1,兼容Android 4.4 搜狗输入法5.1版发布
  15. 怎么使用关键词获取视频列表 API
  16. 高清娱乐,高帧率投屏,来试试PeakDo毫米波无线投屏器
  17. 企业软文推广应该怎么做,软文写作指导
  18. 文本对比。文本编辑距离算法
  19. 【网络安全】利用MSF工具内网复现MS08-067
  20. 杰克.韦尔奇的《赢》读后节选

热门文章

  1. 【面试题】 迅雷2014校园招聘笔试题
  2. [Qt教程] 第37篇 网络(七)TCP(一)
  3. python构建二维数组_Python中创建二维数组
  4. 每天一道LeetCode-----给定二维数组代表海域和岛屿,计算有多少个孤岛
  5. 每天一道LeetCode----从数组中选择若干不连续元素使得总和最大
  6. java里的主线程和子线程以及finally不会执行的特殊情况
  7. 模型占用GPU显存计算
  8. Android安卓程序消息提示和按钮响应事件
  9. LC.exe”已退出,代码为 -1
  10. 关于const变量的一点理解