官方文档英文地址:https://github.com/aspnet/EntityFramework/wiki/Roadmap 历经延期和更名,新版本的实体框架终于要和大家见面了,虽然还有点害羞。请大家多体谅! 下面正式进入主题:Entity Framework Core ( ...
官方文档英文地址:https://github.com/aspnet/EntityFramework/wiki/Roadmap
历经延期和更名,新版本的实体框架终于要和大家见面了,虽然还有点害羞。请大家多体谅! 下面正式进入主题:
Entity Framework Core (EF Core)
下面是EF Core 的计划和技术线路,注意,这些计划是可能发现变化的,因为很多事是很难预测的。即便如此,我们还是尽可能保持计划的公开和透明,以解大家对EF Core期望,以及做出相应的安排。
Schedule(时间表)
发布初始版本的时间,我们计划是与get='_blank'>ASP.NET Core 保持一致(ASP.NET Core 的发布时间请参考这里)(译注:方便大家查看,已把大家最关心的部分放在下面,最后一行就是EF Core 的发布时间 2016 年6年底)
EF Core 与ASP.NET Core 不存在严密的挂钩(因为EF Core 在ASP.NET之外还有很多运用场景),但它是ASP.NET Core不可或缺的一部分,因此在发布ASP.NET Core时,我们必须提供一个稳定的EF Core 版本,这很重要!
Features(特性)
因为EF Core 是一个新的代码库(译注:完全重写),因此,之前版已有的一些特性在EF Core中,不一定提供。基于此,我们列出了第一个版本已经实现和计划实现的特性。
我们也列出了我们认为很重要的特性,但EF Core 初始版本并没实现 。也就是说,在这些特性没有在EF Core中实现时,EF6.x对于很多应用仍然是最好的选择。
Core 1.0.0 Features
Implemented(已实现)
下面列出的特性EF Core已经实现,并已经包含是官方的pre-release(预览版)。注意下面的特性也许还存在bug,提供的API也有可能会在正式版本中发生变化 ,因为我们还在为第一个稳定的版本而努力。
Basic modelling(基本建模) 基于POCO实体的get/set属性,支持来至BCL(基础类库)的基础类型(比如int, string 等);
Built-in conventions (内建约定) 基于实体类构造一个初始模型;
Fluent API (流式API) 允许你在上下中重写方法OnMedelCreating,以后进一步配置基于约定构建的模型;
Data annotations(数据注解) 添加到实体类,属性头上的Attributes,它会影响EF模型(比如:添加[Required],它将让EF知道一个属性是必须提供的);
TPH inheritance pattern(TPH 继承模式) 允许一个继承层次的类保存到数据的一个表中,通过数据库记录中的一个鉴别列来标识实体类型;
Relationships(关系) 依赖于导航属性和外键属性的实体;
Shadow state properties (影子属性) 没有相应的CLR类,但它是模型的一部分的属性;
Alternate keys(替换键) 可以把关系指向一个替换键(译注:不是主键,但要保证唯一的列);
Model validation (模型验证) 它能阻止模型中无效的模式并提供错误信息;
Key value generation (键值生成) 包含用户自己生成和数据库生成两种模式;
Relational: Table mapping(关系:表映射) 允许实体被映射到表或是列;
Snapshot change tracking(跟踪快照) 基于从数据库中获取的实体的原始值 ;
Notification change tracking(通知跟踪变更)允许你的实体在属性值发生变更时通知变更**;
Accessing tracked state(访问跟踪状态) 访问实体的状态(通过via DbContext.Entry
和 DbContext.ChangeTracker
);
Attaching detached entities/graphs 提供新的API DbContext.AttachGraph帮助你附加实例到上下文中,以便保存新创建或是变更后的实体;
Basic save functionality(基本的保存功能) 允许持久化一个实体的实例到数据库中;
Optimistic Concurrency(乐观并发) 当另一个用户从数据库中获取数据后,如果你试图对该数据进行更改并提交,这将被阻止;
原标题:EntityFramework Core技术线路(EF7已经更名为EF Core,并于2016年6月底发布)
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。