Model表

    public class Goods
{ public string ID { get; set; } public string CreatedBy { get; set; }
public DateTime CreatedTime { get; set; } public string ModifiedBy { get; set; } public DateTime ModifiedTime { get; set; } public string GoodsName { get; set; }
public int GoodsNum { get; set; }
}

配置文件

   public class GoodsEntityTypeConfiguration : IEntityTypeConfiguration<Goods>
{
public void Configure(EntityTypeBuilder<Goods> builder)
{
builder.ToTable("Sample_Goods_01"); builder.HasKey(ci => ci.ID); builder.Property(ci => ci.ID).IsRequired(); builder.Property(cb => cb.CreatedBy)
.IsRequired()
.HasMaxLength(20);
builder.Property(cb => cb.CreatedTime)
.IsRequired(); builder.Property(cb => cb.ModifiedBy)
.IsRequired()
.HasMaxLength(20); builder.Property(cb => cb.GoodsName)
.IsRequired(); builder.Property(cb => cb.GoodsNum)
.IsRequired();
}
}



在MYSQL里,想生成ID保存GUID,开始的时候直接生成 string 生成 text

没有达到我们的效果。ID应该为char(36),CreatedBy 应该为 varchar(20)

应该改为

   public class GoodsEntityTypeConfiguration : IEntityTypeConfiguration<Goods>
{
public void Configure(EntityTypeBuilder<Goods> builder)
{
builder.ToTable("Sample_Goods_01"); builder.Property(ci => ci.ID).IsRequired().HasMaxLength(36).HasColumnType("char(36)"); builder.Property(cb => cb.CreatedBy)
.IsRequired()
.HasMaxLength(20).HasColumnType("varchar(20)"); builder.Property(cb => cb.CreatedTime)
.IsRequired(); builder.Property(cb => cb.ModifiedBy)
.IsRequired()
.HasMaxLength(20).HasColumnType("varchar(20)"); builder.Property(cb => cb.GoodsName)
.IsRequired().HasColumnType("varchar(20)"); builder.Property(cb => cb.GoodsNum)
.IsRequired();
}
}

参考:

Jeffcky,EntityFramework Core映射关系详解

MVC - 10.CodeFrist

蝌蝌,EF6(CodeFirst)+MySql开发脱坑指南

EF Core MYSQL 生成表映射配置问题的更多相关文章

  1. ef.core Mysql

    Entity层 using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; ...

  2. 使用ef core自动生成mysql表和数据编码的问题

    mysql默认的编码是不支持中文的,需要改成utf8编码格式. 而我使用的Pomelo.EntityFrameworkCore.MySql组件生成mysql库和表,他是使用默认编码的. 网上大多说修改 ...

  3. Boolean类型在EF和MySql中的映射关系

    MySQL没有Boolean类型.这也是比较奇怪的现象.例: create table xs ( id int primary key, bl boolean ) 这样是可以创建成功,但查看一下建表后 ...

  4. mysql的表映射

    参考博客:https://blog.csdn.net/shushugood/article/details/79925150 1.服务器上的操作 在服务器上mysql创建一个实例,名为test_db, ...

  5. EF Core MySql GUID配置方式

    builder.Property(m => m.Id) .HasColumnName("Id") .ForMySQLHasColumnType("char(36)& ...

  6. EF Core 2.0中Transaction事务会对DbContext底层创建和关闭数据库连接的行为有所影响

    数据库 我们先在SQL Server数据库中建立一个Book表: CREATE TABLE [dbo].[Book]( ,) NOT NULL, ) NULL, ) NULL, ) NULL, [Cr ...

  7. EntityFramework Core 2.x (ef core) 在迁移中自动生成数据库表和列说明

    在项目开发中有没有用过拼音首字母做列名或者接手这样的项目? 看见xmspsqb(项目审批申请表)这种表名时是否有一种无法抑制的想肛了取名的老兄的冲动? 更坑爹的是这种数据库没有文档(或者文档老旧不堪早 ...

  8. EF Core 2.0 已经支持自动生成父子关系表的实体

    现在我们在SQL Server数据库中有Person表如下: CREATE TABLE [dbo].[Person]( ,) NOT NULL, ) NULL, ) NULL, ) NULL, [Cr ...

  9. EF Core中如何设置数据库表自己与自己的多对多关系

    本文的代码基于.NET Core 3.0和EF Core 3.0 有时候在数据库设计中,一个表自己会和自己是多对多关系. 在SQL Server数据库中,现在我们有Person表,代表一个人,建表语句 ...

随机推荐

  1. 2018 Multi-University Training Contest 9 杭电多校第九场 (有坑待补)

    咕咕咕了太久  多校博客直接从第三场跳到了第九场orz 见谅见谅(会补的!) 明明最后看下来是dp场 但是硬生生被我们做成了组合数专场…… 听说jls把我们用组合数做的题都用dp来了遍 这里只放了用组 ...

  2. ES6学习笔记六(Iterator和for..of)

    { let arr=['hello','world']; let map=arr[Symbol.iterator](); //返回false时继续执行,true停止执行! console.log(ma ...

  3. python类的使用

    下面是一个员工类的创建及类对象的创建实例: #!/usr/bin/python # -*- coding: UTF-8 -*-class Employee: empCount = 0 def __in ...

  4. NOIP模拟赛10 题解

    t3: 题意 给你一棵树,然后每次两种操作:1.给一个节点染色 : 2. 查询一个节点与任意已染色节点 lca 的权值的最大值 分析 考虑一个节点被染色后的影响:令它的所有祖先节点(包括自身)的所有除 ...

  5. Openssl编程--源码分析

    Openssl编程 赵春平 著 Email: forxy@126.com 第一章 基础知识 8 1.1 对称算法 8 1.2 摘要算法 9 1.3 公钥算法 9 1.4 回调函数 11 第二章 ope ...

  6. web@HTML重要标签详介绍.

    1.table标签<table border="1px " rules="groups" cellpadding="5px" cell ...

  7. 【原创】大叔问题定位分享(33)beeline连接presto报错

    hive2.3.4 presto0.215 使用hive2.3.4的beeline连接presto报错 $ beeline -d com.facebook.presto.jdbc.PrestoDriv ...

  8. 【原创】大数据基础之Logstash(1)简介、安装、使用

    Logstash 6.6.2 官方:https://www.elastic.co/products/logstash 一 简介 Centralize, Transform & Stash Yo ...

  9. python PIL实现图片合成

    在项目中需要将两张图片合在一起.遇到两种情况,一种就是两张非透明图片的合成, 一种是涉及到透明png的合成. 相关API见 http://pillow.readthedocs.io/en/latest ...

  10. WPF窗体的生命周期

    和所有类一样,窗口也有生存期,在第一次实例化窗口时生存期开始,然后就可以显示.激活和停用窗口,直到最终关闭窗口. 1.显示窗体 构造函数 Show().ShowDialog()方法:Show()方法显 ...