ABP数据库的迁移

添加表,一(Test)对多(Test1)关系

Test

using Abp.Domain.Entities.Auditing;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HuamotecHDIS.Entities
{
    public class Test : FullAuditedEntity
    {
        [Required]
        public bool Enabld { get; set; }
        [Required, MaxLength(200)]
        public byte[] No { get; set; }
        //一对多
        public virtual ICollection<Test1> Test1 { get; set; } 

        public Test()
        {
            Test1 = new List<Test1>();
        }
    }
}
View Code

Test1

using Abp.Domain.Entities.Auditing;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HuamotecHDIS.Entities
{
    public class Test1 : FullAuditedEntity
    {
        public int TestId{ get; set; }
        public bool Enabld { get; set; }
        public byte[] No { get; set; }

        public virtual Test Test { get; set; }
    }
}
View Code

设置数据库配置文件所在位置为启动项,在控制台选择ef层

执行命令,add-table为生成迁移文件的名称

add-migration add-table

更新数据库

update-database

生成的数据库

一对一实体类

 Test

using Abp.Domain.Entities.Auditing;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HuamotecHDIS.Entities
{
    public class Test : FullAuditedEntity
    {
        public int Test1Id { get; set; }
        [Required]
        public bool Enabld { get; set; }
        [Required, MaxLength(200)]
        public byte[] No { get; set; }
        //一对一
        public virtual Test1 Test1 { get; set; }
    }
}
View Code

Test1

using Abp.Domain.Entities.Auditing;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HuamotecHDIS.Entities
{
    public class Test1 : FullAuditedEntity
    {
        public bool Enabld { get; set; }
        public byte[] No { get; set; }

    }
}
View Code

数据库

删除重新生成表

1.删除生成的迁移文件

2.删除生成数据库中的表

3.删除数据库中的日志记录

 

转载于:https://www.cnblogs.com/shiruina/p/9298121.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ABP创建MySQL数据库的步骤如下: 1. 首先,使用ABP提供的项目模板创建一个新的项目。该模板提供了Module Zero项目,其中包含了用户、角色、权限等通用功能。然而,使用该模板连接MySQL可能会导致错误,无法正常运行。 2. 为了解决ABP+MySQL的问题,需要进行一些修改。打开源代码中的`DYDbContextConfigurer`类,该类用于配置数据库连接。在该类中,找到`Configure`方法,并将其中的代码修改如下: ```csharp public static class DYDbContextConfigurer { public static void Configure(DbContextOptionsBuilder<DYDbContext> builder, string connectionString) { builder.UseMySql(connectionString, new MySqlServerVersion(new System.Version(5, 0))); } public static void Configure(DbContextOptionsBuilder<DYDbContext> builder, DbConnection connection) { builder.UseMySql(connection, new MySqlServerVersion(new System.Version(5, 0))); } } ``` 3. 接下来,打开Web项目的Web.config文件。由于上一步添加了`MySql.Data.Entity`,所以Web.config已经添加了MySQL的相关配置。在Web.config中,找到连接字符串部分,注释掉SQL Server的连接字符串,并添加新的MySQL连接字符串。 通过以上步骤,你就可以成功创建ABP项目的MySQL数据库了。请确保你已经正确配置了MySQL数据库,并提供了正确的连接字符串。 #### 引用[.reference_title] - *1* *3* [使用ABP EntityFramework连接MySQL数据库](https://blog.csdn.net/weixin_31292909/article/details/113164152)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [ABP框架数据库改为MySQL](https://blog.csdn.net/daiyue945/article/details/128236930)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值