其实是一个很常用的场景:某个字段比如是不可为空bit型的,在数据库里设置了默认值为1,对应的属性类型自然是bool.

使用VS2010的模型编辑器更新了Model信息后,进行插入测试,没有对该字段赋值,因为是不可空bool类型,我们知道,在new这个对象的时候,如果没有显示指定,该属性一定是false的。但因为数据库设置了默认值,所以我们希望的结果应该是true。但实际的结果却是false,说明,数据库的默认设置在EF下没起作用。

解决方案:

第一步:手工使用xml编辑器打开edmx文件,找到相应的实体和属性,手工加上如下信息:

<Property Name="IsVisible" Type="bit" Nullable="false" DefaultValue="true" />

第二步:使用模型浏览器,找到相应的实体属性,并设置默认值

保存之后,再次测试,现在结果正常了,如果insert的时候不设置该属性,则会按照数据库的默认设置新增,如果update的时候,就按照具体的字段值来更新了。

从网上搜了下,也找到类似的问题:

可参考:https://connect.microsoft.com/VisualStudio/feedback/details/505178/storegeneratedpattern-property-in-ado-net-entity-model-designer-sets-cdsl-annotation-but-not-ssdl-attribute#

http://connect.microsoft.com/VisualStudio/feedback/details/611665/storegeneratedpattern-does-not-saved-properly-into-edmx-entity-framework-4-0

该问题不知道在4.1里面修复了没有,如果有用过的朋友请告知 一下,不胜感激。考虑到项目情况,暂时还不打算升级到4.1。

转载于:https://www.cnblogs.com/qiuliang/archive/2011/09/07/2170181.html

Entity Framework 4.0 的一个bug :DefaultValue问题相关推荐

  1. Log4j 2再现新漏洞;缺乏资助不是开源软件安全的唯一问题;微软公布 Entity Framework 7.0 计划 | 开源日报

    整理 | 宋彤彤 责编 | 屠敏 开源吞噬世界的趋势下,借助开源软件,基于开源协议,任何人都可以得到项目的源代码,加以学习.修改,甚至是重新分发.关注「开源日报」,一文速览国内外今日的开源大事件吧! ...

  2. 浅析Entity Framework Core2.0的日志记录与动态查询条件

    前言 Entity Framework Core 2.0更新也已经有一段时间了,园子里也有不少的文章.. 本文主要是浅析一下Entity Framework Core2.0的日志记录与动态查询条件 去 ...

  3. 在Entity Framework 4.0中使用 Repository 和 Unit of Work 模式

    [原文地址]Using Repository and Unit of Work patterns with Entity Framework 4.0  [原文发表日期] 16 June 09 04:0 ...

  4. Entity Framework 5.0系列之Code First数据库迁移

    我们知道无论是"Database First"还是"Model First"当模型发生改变了都可以通过Visual Studio设计视图进行更新,那么对于Cod ...

  5. 深入解读 Entity Framework 4.0和4.1

    记得去年初就开始关注Entity Framework,那时只是简单测试了一下,发现较之Nhibernate不太成熟.当时的EF主要表驱动方式开发,过度依赖edm文件,并且数据层耦合了模型层,让一些MV ...

  6. VS2002 与 IIS6.0的一个bug

    今天遇到一个问题,就是在win2003上用vs2002打开一个asp.net project.总是提示: The default Web access mode for this project is ...

  7. Entity Framework 5.0基础系列

    1.Entity Framework简介 http://www.cnblogs.com/aehyok/p/3315991.html 2.Entity Framework DBFirst尝试http:/ ...

  8. Entity Framework 5.0 Code First全面学习

    Code First 约定 借助 CodeFirst,可通过使用 C# 或Visual Basic .NET 类来描述模型.模型的基本形状可通过约定来检测.约定是规则集,用于在使用 Code Firs ...

  9. MVC新手教程三:Entity Framework 4.0 来实现MVC的增删改查功能,10分钟搞定

    在这一节,我们使用VS2010自带的EF4.0来实现MVC的增删查改功能,为什么用EF呢?因为如果你自己手写sqlhelper之类,或者是用动软,和我们用EF的速度比,太慢太慢··· 当然,新手还是用 ...

最新文章

  1. SearchHit转成java对象_Java开发中最常犯的10个错误,你中招了吗?
  2. 使用MOXy 2.5.1快速且有点脏的JSON模式生成
  3. MySQL-主从架构探索
  4. 【JDBC】实现对JDBC 连接的简单封装
  5. STM32开发 -- VS2017错误
  6. 自定义SAP Spartacus的产品搜索API参数 - Product Search
  7. jq checked 设置问题
  8. vue用公共组件页面传值_vuejs几种不同组件(页面)间传值的方式
  9. python面试题之如何计算一个字符串的长度
  10. java中prepend的用法_jQuery中prepend()方法用法实例
  11. messagebox弹窗_从案例入手学Python——检测文件生成并弹窗提醒
  12. HDU2501 Tiling_easy version【递推+打表】
  13. 使用python往数据库中添加数据
  14. Kotlin中定义编译时常量
  15. syn flag flooding防御
  16. Linux文件系统(四)---三大缓冲区之inode缓冲区 (内存inode映像 )
  17. 哈夫曼树及哈夫曼编码(10分)
  18. 蓝桥杯,历届试题,九宫重排
  19. 软件测试的7个基本原则
  20. IOS屏幕旋转的检测 与 强行切换

热门文章

  1. css 高度塌陷_web前端入门到实战:CSS 负边距的行为表现
  2. python实现火车票查询_python实现12306火车票查询器
  3. php解决mysql主从同步_Mysql读写分离,主从同步实现
  4. 计算机组成原理第二版第4章的答案,计算机组成原理第4章习题参考答案
  5. android 邮件分享链接,Android应用从通过电子邮件发送的链接打开
  6. php编译支持mysql,编译php支持curl和pdo_mysql
  7. Java @FunctionalInterface注解
  8. 如何用记事本编写运行java程序?
  9. Spring Boot Cache之缓存
  10. diag开关什么意思_双控开关接线图_一灯双控开关接线图_单联双控开关接线图_双控开关接线图实物图...