码迷,mamicode.com
首页 > 其他好文 > 详细

EF CodeFirst Dome学习

时间:2017-09-06 18:28:13      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:key   启用   数据库   数据库链接   name   模型   附加   class   sum   

创建ConsoleDome控制台应用程序

技术分享

从NuGet包管理器安装EntityFramework

技术分享

 

创建DbContextDome类并继承DbContext

public class DbContextClass : DbContext
    {
        /// <summary>
        /// ConnectionString就是在config中设置的数据库链接字符串
        /// </summary>
        public DbContextClass()
            : base("ConnectionString")
        { }

        public DbSet<user> user { get; set; }

        public DbSet<BlogModel> blog { get; set; }
    }

设置config

<connectionStrings>
    <add name="ConnectionString" connectionString="server=.;database=EFCodeFirstDB;uid=***;pwd=***" providerName="System.Data.SqlClient"/>
  </connectionStrings>

创建实体模型

 public class user
    {
        public int id { get; set; }

        public string username { get; set; }

        public string pwd { get; set; }

        [Column(TypeName = "nvarchar")]
        [MaxLength(200)]
        public string Email { get; set; }
        public string pwdd { get; set; }
    }

 public class BlogModel
    {
        public int id { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Tiele { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string TieleUrl { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string Content { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string ImgUrl { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public DateTime CreateDate { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string ReadNumber { get; set; }
    }

  在程序包管理器控制台执行Enable-Migrations来创建Configuration配置ef

技术分享

 

最后执行Update-Database -Verbose来更新数据库

 

附加codefirst命令

一、Enable-Migrations

  说明:为项目启用迁移。此命令为项目添加Migrations文件夹,其中包括两个文件:

    Configuration类:此类允许针对上下文配置迁移的行为

    InitialCreate迁移:此迁移在启用迁移之前生成。如果在启用迁移之前没有生成数据库,则不会将此文件加入到项目中,而是在首次调用"Add-Migration"命令时生成。

  语法:Enable-Migrations

 

二、Add-Migration

  说明:根据上一次迁移以来对模型所做的更改,为下一次迁移搭建基架。

  语法:Add-Migration "[Name]"

     Name:迁移显示名字,将与当前生成文件时间戳构成生成的迁移文件名

 

三、Update-DataBase

  说明:将所有挂起的迁移应用与数据库

  语法:Update-Database -[Option]

     Option:Vcrbose 在控制台显示迁移所运行的SQL

          TargetMigration:[Name] 迁移到特定的版本,如果需要回滚到空数据库,则可以将[Name]写为$InitialDatabase

          Script 是迁移生成脚本而不执行

          SourceMigration:[Name]源迁移

 

四、自动迁移

  说明:在部署应用程序时希望在应用程序启动时通过虽有挂起的迁移自动升级数据库

  代码:Database.SetInitializer(new MigrateDatabaseToLatestVersion<DbContext, Configuration>()); 

EF CodeFirst Dome学习

标签:key   启用   数据库   数据库链接   name   模型   附加   class   sum   

原文地址:http://www.cnblogs.com/jiaxuekai/p/7486029.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!