数据有一个字段,用的是 tinyint 长度是1  默认值为0 ,

当用vs2013中的 EF5来生成 实体模型之后,看到这个列被标识为 bool 类型

Mysql官方参考文档关于布尔类型的说明:

BOOL, BOOLEAN

These types are synonyms(同义词) for TINYINT(1). A value of zero is considered(认为是) false. Nonzero(不为0) values are considered true

下面是一个老外的文章,http://forums.mysql.com/read.php?38,562960,562960  他用的是EF4.3版本,我用的是EF5版本

I believe I've discovered a bug in the way the MySQL Connector for .NET maps fields of type TINYINT(1) within Entity Framework.
The database I'm working with has a number of fields used to store "enumeration values" - basically an integer that represents a specific .NET enumeration value. ie/ Open = 1, Closed = 2
Since the enumerations contain a small number of possible values (2-5), the majority of these fields are declared as the MySQL datatype TINYINT(1). In other words, we want an integer with a minimal amount of storage space and a maximum of "one character".
When we use Entity Framework 4.3 to map these TINYINT(1) fields to an "int" data type, the integer value *always* comes back as "1", regardless of the underlying storage value. The integer values 2, 3, 4, etc all get converted to 1.
If I convert the entity property's type to "string", it receives a value of "True".
It appears as though the MySQL Connector for .NET is hardcoded to treat TINYINT(1) as a boolean, regardless of the data type it's eventually bound to. TINYINT(1) should only be converted to a boolean when it's bound to a "bool" property, and nothing else. It appears as though it's trying to simulate the behavior of the "BIT" field in SQL Server, which is a completely different thing (it's not an integer, while TINYINT is).
Is this a known issue? Should I file a bug report?

翻译过来如下

他说,在EF4.3中,他用一个字段 Tinyint(1) 想去存一个 int类型的值,不管是存 1还是2,3,4 他都是变成了1

如果他在Ef的实体中把类型改为string,到了数据库却变成了 “True”

这个问题好像是发生在,通过 MySql Connector For .Net这个组件来链接Mysql的时候发生的 .

解决方法 .

Tinyint(1)  就只用来保存 bool 值  只有0和1  不要保存其他的值

如果要保存多的值,就用 Tinyint(4) 这样的,那么到了Ef中这个 类型会变成  sbyte ,这个就是一个整形 .

备注:sbyte:存储8位带符号整数。sbyte中的s代表带符号(signed),意味着变量可为正值或负值。sbyte变量的最小可能值为-128,最大可能值为127。

Entity Framework 5中遇到的 mysql tinyint(1) 转换为 bool 的问题 (我用的是VS2013中的EF5版本)...相关推荐

  1. 创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表

    创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添 ...

  2. 了解Entity Framework中事务处理

    Entity Framework 6以前,框架本身并没有提供显式的事务处理方案,在EF6中提供了事务处理的API. 所有版本的EF,只要你调用SaveChanges方法进行插入.修改或删除,EF框架会 ...

  3. 如何使用Entity Framework在Always Encrypted列上模拟通配符搜索

    介绍 (Introduction) The title of this post should have been "How to implement wildcard search fun ...

  4. Entity Framework ModelFirst尝试

    原文:Entity Framework ModelFirst尝试 前言 Model First我们称之为"模型优先",这里的模型指的是"ADO.NET Entity Fr ...

  5. Entity Framework Code First关系映射约定

    本篇随笔目录: 1.外键列名默认约定 2.一对多关系 3.一对一关系 4.多对多关系 5.一对多自反关系 6.多对多自反关系 在关系数据库中,不同表之间往往不是全部都单独存在,而是相互存在关联的.两个 ...

  6. Entity Framework 实体框架的形成之旅--利用Unity对象依赖注入优化实体框架(2)

    在本系列的第一篇随笔<Entity Framework 实体框架的形成之旅--基于泛型的仓储模式的实体框架(1)>中介绍了Entity Framework 实体框架的一些基础知识,以及构建 ...

  7. 彻底征服 Entity Framework Core 优化!

    作者 | 喵叔 责编 | 胡巍巍 出品 | CSDN(ID:CSDNnews) 这篇文章我们来讲解一下 Entity Framework Core 的优化方案.Entity Framework Cor ...

  8. .net Entity Framework

    Entity Framework,即实体框架(EF),由微软公司出品. 目前有两个大的版本.net版本和.core版本 微软官方描述: 实体框架文档 Entity Framework Core 是适用 ...

  9. Entity Framework 在MySQL中执行SQL语句,关于参数问题

    在Entity Framework中添加MySQL模型,在写代码的过程中需要直接执行SQL语句. 在SQL语句中用到了@curRank := 0 这样在SQL语句中定义参数,同时还会有传入参数:ai. ...

最新文章

  1. 使用navicat工具创建MySQL存储过程
  2. 二调建设用地地类代码_二调土地地类代码表
  3. library “libopencv_java4.so“ not found“
  4. VTK:Utilities之ConstructTable
  5. java测试磁盘读写速度_用来测试自己硬盘读写性能的代码勿尝试
  6. sso集成shiro_Keycloak SSO集成到jBPM和Drools Workbench中
  7. 使用java自带的日志管理_java日志管理
  8. Flask render_template
  9. SMTP协议初探(二)----linux下c编程实现发邮件
  10. slab中记录空闲对象
  11. C++ new 解析重载
  12. Other - 个人对知识讨论、分享等平台上抄袭乱象的看法
  13. 【Python】使用Python批量移动文件
  14. Android控件——HorizontalScrollView使用(一)
  15. 纳税申报、发票识别验真:解析RPA如何应用于税务领域
  16. 最新蹭网录制教程,pin破解,wpa破解
  17. 爬虫练习三:爬取链家二手房信息
  18. 八十二烷基笼状聚倍半硅氧烷poss无色透明黏稠液体|提高颜料分散性
  19. 《新撰组异闻录——铁》启示录
  20. 满天都是小星星C语言答案,满天都是小星星

热门文章

  1. 抓豆瓣的电影评论数据
  2. 将信息系学生的计算机文化学,计算机学生论文,关于基于职业岗位的计算机文化基础课教学相关参考文献资料-免费论文范文...
  3. 华为日志服务器文档,免费日志服务器
  4. python读取多个文件夹_在python中如何从不同的文件夹读取多个文件
  5. JSP 开发环境搭建概述
  6. Powershell 如何批量获取文件大小的实现代码
  7. xgboost 正则项_XGBoost入门系列第一讲
  8. JavaScript初学者编程题(8)
  9. golang 绘图库_golang在图片上绘制中文不乱码的方法
  10. nginx文件服务器html美化,关于nginx:Nginx浏览目录配置及美化