.Net开源框架ABP初探(二)— 使用Code First方式创建数据表

栏目: ASP.NET · 发布时间: 5年前

内容简介:[Table(“xxx”)]指定表名,不指定默认使用类名;[ForeignKey(“xxx”)]指定关联表外键的名称。打开.EntityFrameworkCore项目,找到xxxDbContext类,在类中加入新模型的相关代码:打开NuGet程序包管理控制台,选择默认项目为.EntityFrameworkCore项目。
  • 打开.Core项目,新建新建一个项目文件夹(Clothes);
    为了演示表关联及外键的使用,创建两个类:
  • 创建类ClothesCategoty.cs
    using Abp.Domain.Entities;
    namespace myTest.Clothes
    {
        public class ClothesCategory:Entity
        {
               public virtual string Name { get; set; }
        }
    }
    

using Abp.Domain.Entities引用Abp.Domain.Entities,abp中所有的类都继承自Abp.Domain.Entities.Entity,集成后会自动创建表主键字段Id。

  • 创建类Clothes.cs
    using System;
    using System.ComponentModel.DataAnnotations.Schema;
    using Abp.Domain.Entities;
    
    namespace myTest.Clothes
    {
        [Table("Clothes")]
        public class Clothes:Entity
        {
            public virtual DateTime CreationTime { get; set; }
            public virtual string PictureUrl { get; set; }
            [ForeignKey("ClothesCategoryId")]
            public virtual ClothesCategory ClothesCategory { get; set; }
        }
    }
    

[Table(“xxx”)]指定表名,不指定默认使用类名;[ForeignKey(“xxx”)]指定关联表外键的名称。

2.添加类到DbContext

打开.EntityFrameworkCore项目,找到xxxDbContext类,在类中加入新模型的相关代码:

public virtual DbSet<Clothes.Clothes> Clothes { get; set; }
public virtual DbSet<Clothes.ClothesCategory> ClothesCategory { get; set; }

如下图:

.Net开源框架ABP初探(二)— 使用Code First方式创建数据表

3.执行命令

打开NuGet程序包管理控制台,选择默认项目为.EntityFrameworkCore项目。

  • 执行Add-Migration xxxx,其中xxxx可自主命名;

    .Net开源框架ABP初探(二)— 使用Code First方式创建数据表

    执行完成后会在项目的Migrations文件夹下自动生成两个文件,如下图:

    .Net开源框架ABP初探(二)— 使用Code First方式创建数据表
  • 执行“Update-Database”

    至此,数据库表创建完成。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入理解Nginx

深入理解Nginx

陶辉 / 机械工业出版社 / 2013-4-15 / 89.00元

本书是阿里巴巴资深Nginx技术专家呕心沥血之作,是作者多年的经验结晶,也是目前市场上唯一一本通过还原Nginx设计思想,剖析Nginx架构来帮助读者快速高效开发HTTP模块的图书。 本书首先通过介绍官方Nginx的基本用法和配置规则,帮助读者了解一般Nginx模块的用法,然后重点介绍如何开发HTTP模块(含HTTP过滤模块)来得到定制的Nginx,其中包括开发一个功能复杂的模块所需要了解的......一起来看看 《深入理解Nginx》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具