zoukankan      html  css  js  c++  java
  • EntityFramework 开始小试

    1 Install-Package EntityFramework

    2 创建实体类

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

    3 创建context

    public class EFTestContext : DbContext
    {
    public EFTestContext() : base("name=sqlmonitor") { }


    public DbSet<CGroup> CGroups { get; set; }
    public DbSet<Address> Addresses { get; set; }
    public DbSet<Contact> Contacts { get; set; }
    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
    base.OnModelCreating(modelBuilder);
    modelBuilder.Entity<Contact>().HasOptional(c => c.Address)
    .WithOptionalDependent(add => add.Contact);
    modelBuilder.Entity<CGroup>().HasMany(c => c.Contacts)
    .WithRequired(c => c.CGroup).WillCascadeOnDelete(false);
    //modelBuilder.Entity<EasyUIEFWebApp.DAL.EFModels.Contact>().HasOptional(c => c.CGroup)
    // .WithMany(c => c.Contacts).WillCascadeOnDelete(true);
    }
    }

    4 设置数据链链接  注意要和context的name一致,否则创建本地数据库

    <connectionStrings>
        <add name="sqlmonitor" connectionString="Data Source=(LocalDb)v11.0;Initial Catalog=sqlmonitor;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>
      </connectionStrings>
    5 Enable-Migrations
    在nuget中执行上面的命令,如果报错,1请看是否书写错误,2是否是ef所在的项目,3编译后试试4 看看nuget的版本是否太老
    6 update-database

    更新到数据库。 注意,有的文章写的是Add-Migrations InitialCreate 我执行的时候报错了,(应该是已经有数据库的缘故没试)没有解决,
    用 update-database 则没有报错,并且正确更新到数据库。
    Update-Database -Verbose
    7  Add-Migration 注意后面要跟名字, 比如 Add-Migration modifyusertable
    类似版本控制的东东

  • 相关阅读:
    RabbitMQ 高可用集群搭建
    Ubuntu16.04 安装RabbitMQ
    surging+CentOS7+docker+rancher2.0 菜鸟部署运行笔记
    查看进程使用swap的状态
    查看磁盘信息命令汇总
    复制一批文件,每个文件名包含日期
    小妙招:yum 夯住了怎么办?
    测试并发数
    centos7安装python3
    使用rsync需要注意的一些问题
  • 原文地址:https://www.cnblogs.com/wang2650/p/5240571.html
Copyright © 2011-2022 走看看