微软发布最新的ef 6.2 beta 1 -欧洲杯足彩官网

0顶
1踩

微软发布最新的ef 6.2 beta 1

2017-05-31 17:39 by 正式记者 评论(0) 有4342人浏览

英文原文:

 

5 月初,.net 团队发布了一个 core 2.0 实体框架的预览版本,这是 ef 对于 .net core 和 .net framework 的轻量级、可扩展和跨平台的版本。

 

5 月 23 日,entity framework runtime 和相应的 visual studio 工具的 6.2 beta 版本已经可用了。ef 6.2 是 microsoft 更传统的对象/.net framework 关系映射器的新迭代。

  

将应用程序升级到 ef 6.2 beta 1 runtime

通常情况下,nuget 会提供 ef 6 runtime 的预发行版本。在 visual studio 中,可以通过“manage nuget packages”窗口(确保“include prerelease”选项被选中)或“package manager console”中的 nuget 命令,实现应用程序中 ef 软件包的安装或更新。

 

例如,更新现有项目中的 beta 包:

pm> update-package entityframework -version 6.2.0-beta1 -pre

在新项目中安装 beta 包:

pm> install-package entityframework -version 6.2.0-beta1 -pre

  

升级 visual studio 中的 ef 工具

用户可以从 microsoft 下载中心获取安装程序。只需要下载并安装与正在使用的 visual studio 版本对应的文件即可。

 

目前支持 visual studio 2012、2013 和 2015。请注意,目前并没有为 visual studio 2017 提供测试版的 ef 工具。因为 visual studio2017 需要使用不同的机制来将更新分发给 ef 工具这样的组件,.net 团队计划稍后提供更新日期。

 

ef 工具的大部分代码是跨 visual studio 版本共享的,因此任何版本的测试都有助于验证 beta 版的质量。

 

如果用户只安装了 visual studio 2017,仍然可以将应用程序升级到使用 6.2 beta 1 版本的 ef runtime,同时继续使用 visual studio 中包含的 ef 工具。

  

降低 visual studio 中的 ef 工具

当用户安装此测试版时,它会替换掉 visual studio 中包含的工具或安装的任何先前版本。如果用户在使用此测试版过程中,遇到任何问题, visual studio 附带的工具可以将工具还原到之前的版本。可以按照以下步骤进行操作:

  • 使用“添加/删除程序”,卸载 visual studio 的实体框架工具

  • 修复 visual studio 安装

  

ef 6.2 beta 1 中有什么新功能?

虽然 ef 团队的重点工作是为 ef core 增加新功能和改进,但是也计划继续修复一些重要 bug,实施小型改进,并接受社区对 ef 6 代码库的贡献。

 

社区的开源贡献者为 ef 6.2 beta 1 版本的许多提升做出的巨大贡献,在此表示感谢。此版本的完整列表(包括即将推出的 powertools 版本中的错误修复)可在 github query 中找到。

  

新功能中值得一提的有以下几点:

  • 通过从永久缓存#275 中加载第一个模型的完成代码来减少启动时间

  可以通过将以下代码加入到应用中来实现该功能:

using system.data.entity;
using system.data.entity.infrastructure;
namespace myapplication
{
    public class mydbconfiguration : dbconfiguration
    {
        public mydbconfiguration () : base()
        {
            this.setmodelstore (new defaultdbmodelstore (directory.getcurrentdirectory ())); 
        }
    }
}
  • 提供程序报告无效键时 ef 工具更新模型的问题#243

  在某些数据库逆向工程场景中,某些提供程序可能会错误地指示主键列为空。ef 工具不再将其报告为错误,而是会忽略不正确的可空性。

  • 添加 dbfunctions.like(),使得可以在 sql 中编写转换为 like 的 linq 查询#241

  用法如下:

var  query = db.people.where(p=> dbfunctions.like(p.name,“w%”));

  • migrate.exe 支持 support -选项#240

  启用使用命令行工具生成用于迁移的 sql 脚本。

  • 使用参数过多时,从数据库更新大型模型可能导致 sp_executesql 失败#185

  这是与 sql server 大数据模型配合使用的长期问题。有关详细信息,请参阅“”。

  • ef6 不能与序列主键一起使用#165

  现在可以采用与序列兼容的机制,在 runtime 使用标志来更改 ef 检索插入 sql serer 的生成值:

  • 更新 sql azure 执行策略错误号#83

  将额外的错误纳入到临时性错误列表,以便能够根据客户反馈和 azure sql 数据库上的新数据进行恢复。

  • 使用“the sqlparameter is already contained by another sqlparametercollection”命令重试查询或 sql 命令失败#81

  在使用重试执行策略时,该问题会影响多个 api。

  • 调试器中 dbquery.tostring()的评估经常会超时#73

  根据 debugger 团队的建议,.net 团队添加了一个新的 sql 属性,以便在诸如 autos,locals 或 watch 之类的调试窗口中 linq 查询被检查时使用。仍然可以使用`tostring()方法来获取 sql,但调试器已经不会使用了。

  

为 provider 提供 call to action

.net 团队怀疑一些现有的 ef provider 可能会受到此版本中工具包含的修复的不利影响,因此请求 provider 的帮助来验证这一假设。

该修复程序解决了 ef 工具的“update model from database”功能中使用模式发现查询长期存在的问题。对具有大量对象的数据库使用该功能时,模式发现查询可能会包含大量参数。特别是 sql server 对每个查询的参数限制为 2100,生成查询和参数的方式可能导致任何超过 300 个对象的模型失败。github 问题更详细地描述了此问题:使用过多参数,从数据库更新大型模型可能导致 sp_executesql 失败#185。

  

有哪些改变

@bengutt 基于原有的想法并实现了这个修复程序,通过对每一个不同值使用重复利用参数对象,实现了模式发现查询所需参数的显著减少了。

 

该修复程序是在跨 provider 和所有当前和以前的 ef 版本中,使用共享代码实现的,这也可能会使非 sql server 的 provider 获益。因此希望尽可能多的 provider 使用此新版本。但是,如果对某些 provider 是破坏性的改变,那么将终止将 sql server 视作特殊案例的情况。

  

provider 会受到什么影响

任何利用 ef 查询功能来实现模式发现的 provider 都会受到影响。例如通过在数据库模式中提供自己的 ssdl 和 msl 模型文件,只能受益于或不受参数数量的减少的影响。

 

然而,一些 provider 通过模式发现查询中的模式匹配来实现模式发现,然后将这些模式转化成原生模式发现 api 的调用。这样的提供者需要实现一些逻辑来将查询参数与查询中的过滤器相匹配。根据后一个实现方式的不同,如果参数的数量或顺序会随着修复程序改变,则可能会中断此参数。

  

如果你的 provider 因为修复而损坏,请报告

如果你的 provider 已损坏,请在 call to action for provider writers: test compatibility with schema discovery queries in ef tools 6.2 地 github 问题下留言。#195

  

beta 1 之后是什么?

.net 团队计划短期内在 ef 6 方面做下几件事情:

  • 正在考虑使用 visual studio 2017 的兼容性来发布一个 ef 6 powertools 的更新。

  • 一旦 .net 团队收到并分析了 beta 版本的反馈,将决定是否需要发布另外一个预览版本,还是设定好 6.2 版本的最终发布日期。

  • 如前所述,.net 团队将在后续发布 visual studio 2017 的 ef 6.2 工具。

目前已有很多产品支持 ef,其中值得一提的是 ,componentone 基于 ef6 的版本能够帮助用户充分发掘 ef6 的潜力并使其在 winforms 应用中更加易用。

 

关于葡萄城
葡萄城是全球最大的控件提供商,世界领先的企业应用定制工具、企业报表和商业智能欧洲杯足彩官网的解决方案提供商,为超过75%的全球财富500强企业提供服务。
转载请注明出自:葡萄城控件
来自:
0
1
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 5 月初,.net 团队发布了一个 core 2.0 实体框架的预览版本,这是 ef 对于 .net core 和 .net framework 的轻量级、可扩展和跨平台的版本。 5 月 23 日,entity framework runtime 和相应的 visual studio 工具的 ...

  • 1. 面向对象都有哪些特性以及你对这些特性的理解 21 2. 访问权限修饰符public、private、protected, 以及不写(默认)时的区别(2017-11-12) 22 3. 如何理解clone对象 22 二、javase语法(2017-11-12-wl) ...

  • 1. 数据库的基本概念 1.1 什么是数据库 数据库(database) 就是存储和管理数据的仓库 其本质是一个文件系统, 还是以文件的方式,将数据保存在电脑上 1.2 为什么使用数据库 数据存储方式的比较 存储方式 ...

  • 覆盖.net ,asp.net等内容: .net free ebook/guide on ‘.net microservices – architecture for containerized .net applications’ 链接:https://blogs.msdn.microsoft.com/cesardelatorre/2017/05/10/free-...

  • 装机必备的100个软件下载和注册码第 1 名 网际快车 flashget 1.65 简体中文版 正式版注册码 :fgf-keehkevcd2z6o03mukpdgb24hazdpp8ya3xonrr9或fgc-ip18a4umpsrqb5rqvr9cr0wahns3ov1k1l3jhfh2 第 2 名 realone ...

  • 文章目录手把手教你搭建kubernetes集群(含脚本/视频)一、 环境准备1. 1 机器环境1.2 设置主机别名1.3 服务器静态ip配置1.4 查看主机名1.5 配置ip host映射关系1.6 安装依赖环境1.7 防火墙配置1.8 关闭selinux1.9 ...

  • 因为发起人大boss :miguel de lcaza 是西班牙人,喜欢猴子.........这篇博客《mono在国内的发展历程(相关文章汇总)》,2000年8月,微软、惠普和英特尔共同制定cli和c#编程语言的标准规格,微软在2001年把...

  • taskrole_name: taskrole fc_taskrole_uid: cb7d2180-42f7-11ee-afe1-3e7a5abc8c82 fc_task_attempt_id: 0 fc_task_index: 0 fc_task_uid: cb7d21aa-42f7-11ee-afe1-3e7a5abc8c82 container.apparmor.security.beta....

  • 目录 第0章 让我们谈谈学习方法和红帽系统。 11 0.1 本书作者简介 11 0.2 学习是件苦差 11 0.3 开源共享精神 12 0.4 为什么要学linux? 12 0.5 热门的开源系统 13 0.6 认识红帽认证 14 第1章 部署虚拟环境安装linux...1

  • 2009年,mono最新版本mono 2.6,monnodevelop发布了2.0,同时moonlight 1.0也发布了,微软的asp.net mvc 1.0也开源了,可以在mono上跑了,微软已经开源了不少项目:asp.net mvc ,net dynamic language runtime (dlr)...

  • 1.microsoft .net framework 4 框架 <br />参考http://msdn.microsoft.com/en-us/library/ms171868(vs.100).aspx <br />1.1.microsoft .net framework 4 client profile <br />这是个好东东,...

  • 1、kubernetes概述 k8s缩写是因为k和s之间有八个字符。k8s是基于容器技术的分布式架构方案。欧洲杯足彩官网:https://kubernetes.io/zh-cn/ google在 2014年开源了kubernetes项目,kubernetes是一个用于自动化部署、扩展和管理...

  • 【装机精品 白金品质】 云帆技术 ghost xp sp3 完美装机专业版 v2.5软件名称: yf_ghostxpsp3_ntfs_v2.5.iso软件大小: 693mbcrc32: 15a27980md5: b4b24c91cf56dcf13d72ef60dd5e2becsha-1: 71beba553b5a0e6f69d1950cd...

  • 一、 前言 一致的命名模式是托管类库中可预知性与可发现性最重要的元素之一。对这些命名指南广泛的使用和理解将...二.1 大写样式 使用下面的三种大写标识符约定。 二.1.1 pascal 大小写 将标识符的首字母和后面连接

  • python库是一组预先编写的代码模块,旨在帮助开发者实现特定的编程任务,无需从零开始编写代码。这些库可以包括各种功能,如数学运算、文件操作、数据分析和网络编程等。python社区提供了大量的第三方库,如numpy、pandas和requests,极大地丰富了python的应用领域,从数据科学到web开发。python库的丰富性是python成为最受欢迎的编程语言之一的关键原因之一。这些库不仅为初学者提供了快速入门的途径,而且为经验丰富的开发者提供了强大的工具,以高效率、高质量地完成复杂任务。例如,matplotlib和seaborn库在数据可视化领域内非常受欢迎,它们提供了广泛的工具和技术,可以创建高度定制化的图表和图形,帮助数据科学家和分析师在数据探索和结果展示中更有效地传达信息。

  • stm32单片机fpga毕设电路原理论文报告基于ide硬盘的数字图像存储技术研究本资源系百度网盘分享地址

  • 适合rust入门。深入浅出,事无巨细,远胜市面上所有入门书。而且是免费的

  • vb语言vb房屋租凭管理系统毕业设计(源代码 系统)本资源系百度网盘分享地址

  • 这个示例代码,我们实现了一个用 c 语言判断一个数是否为素数的函数,并通过 main() 函数来测试这个函数。整个过程简单明了,代码结构清晰,易于理解和修改。这个示例展示了 c 语言中函数的定义和调用,以及条件判断和循环等基本语法的使用。

  • 层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例层次化网络设计案例

global site tag (gtag.js) - google analytics
网站地图