你的位置:首页 > 软件开发 > ASP.net > ASP.NET vNext总结:EntityFramework7

ASP.NET vNext总结:EntityFramework7

发布时间:2016-04-15 10:00:08
ASP.NET vNext总结:EntityFramework7源码:http://www.jinhusns.com/Products/Download/?type=xcj1.概述 关于EF7之前的版本如何?这里就不再扯了。更不会和别人争论EF的性能 ...

get='_blank'>ASP.NET vNext总结:EntityFramework7

源码:http://www.jinhusns.com/Products/Download/?type=xcj

1.概述

      关于EF7之前的版本如何?这里就不再扯了。更不会和别人争论EF的性能如何?好比一把宝刀,在善于用它的高手和不善于用它的低手使用威力不同的。

      如题,这里简单说一下EF7,同样它还处于beta版本阶段,如果你遇到bug或功能变化等疑问,不要见怪了。

      EF7只支持CodeFrist代 码优先的映射方式,将来它可以支持更多种数据库,如已经对SQLLite嵌入式数据库支持很好,甚至牛逼得还要支持NoSQL(非关系型数据库)。当然, 我也不会说别的ORM就Out,Old了。一样东西之所以存在并有部分人使用,必然有它的价值,从哲学上来说,存在即合理!

      EF只是封装.Net操作和访问数据库(也就是在ADO.NET基础上),但你首先把它当成映射工具,这也是它的出现第一初衷解决面对对象模型和关系型数据模型映射,至于你非要在意性能,你可以EF中使用原始的SQL语句及存储过程和ADO.NET底层技术。

      显然EF7不是专属于ASP.NET vNext中使用,但本介绍是专题系列,体验在vNext项目模板中使用。

2.创建项目

      在前面文章介绍过的”vNext“解决方案上,右键:添加-》新建项目-》Visual C#-》ASP.NET 5 Console Application,其项目“名称”:vNext.ConsoleAppTemplate,并把它”设为项目启动项“。

      这里先以vNext模板的控制台项目介绍,在后面完整的项目实战中,再在Web项目中“研究”!

3.安装EF及设置commands

     打开project.json:

     ASP.NET vNext总结:EntityFramework7

     注:commands的ef配置是启动ef迁移用的,后面也会说明的。

4.添加模型类及上下文类

      先项目根目录下,创建Models文件夹,在其里面添加三个类文件:

      ASP.NET vNext总结:EntityFramework7

      Role.cs代码:

 

using System.Collections.Generic;

 

namespace vNext.ConsoleAppTemplate.Models

{

    /// <summary>

    /// 角色实体类

    /// </summary>

    public class Role

    {

        public int ID { get; set; }

        public string Name { get; set; }

 

        //导航属性

        public ICollection<User> Users { get; set; }

    }

}

 

      User.cs代码:

 

namespace vNext.ConsoleAppTemplate.Models

{

    /// <summary>

    /// 用户实体类

    /// </summary>

    public class User

    {

        public int ID { get; set; }

 

        public string Name { get; set; }

 

        public Gender Gender { get; set; }

 

        //外键属性

        public int RoleID { get; set; }

 

        //导航属性

        public Role Role { get; set; }

    }

 

    /// <summary>

    /// 性别 枚举类型

    /// </summary>

    public enum Gender { man, woman, secrecy }

}

 

      EFContext.cs代码:

using Microsoft.Data.Entity;namespace vNext.ConsoleAppTemplate.Models        protected override void OnConfiguring(DbContextOptions options)

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:ASP.NET vNext总结:EntityFramework7

关键词:ASP.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。