使用 EF Power Tool Code Frist 生成 Mysql 实体

时间:2023-03-08 18:09:47
使用 EF Power Tool  Code Frist 生成  Mysql 实体

原文:使用 EF Power Tool Code Frist 生成 Mysql 实体

1,在要生成的项目上右键

使用 EF Power Tool  Code Frist 生成  Mysql 实体

 

2,

使用 EF Power Tool  Code Frist 生成  Mysql 实体

 

3,

使用 EF Power Tool  Code Frist 生成  Mysql 实体

 

4,

使用 EF Power Tool  Code Frist 生成  Mysql 实体

 

5,  生成后的效果

使用 EF Power Tool  Code Frist 生成  Mysql 实体

 

 

已知问题:

1,在Mysql数据表中 tinyint(1) ,会被映射成为 C# bool ,这样造成一些数据信息的丢失。 这个问题应该是EF 工具的问题,暂时没有找到解决方案。

     手工去修改生成的实体是不经济的,下次再更新时候,又会变成 bool型 。

     所以解决的办法就是修改数据库字段型 ,一般情况下,把数据类型向大里改是没有问题。

   

   可选 : 改为 smallint(1) , 会被映射为 C# short 类型。

           改为 tinyint(2) , 会被映射为 C#  sbyte 。

            这两种类型都可以满足一般情况下的要求了。

 

 

  常用修改语句(下面是个例子,别直接Copy):

改为Tinyint(2)

alter table `数据库名`.`表名` 
change `字段名` `字段名` tinyint(2) default '0' NOT NULL

 

或  改为smallinit(1)

 

alter table `数据库名`.`表名`   
 change `字段名` `字段名` smallint(1)  default '0' NOT NULL