加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

使用Entity Framework 4.1 Code First在数据库中为null时,默认bo

发布时间:2020-12-12 07:07:17 所属栏目:MsSql教程 来源:网络整理
导读:当数据库中的值(位)设置为NULL时,如何设置默认值.现在我收到一个错误,告诉我从数据库加载bool时它不能为NULL. 谢谢. 解决方法 您的模型必须与数据库匹配 – 如果数据库可能具有NULL值,您应该在模型中使用可空的bool – 但是您可以覆盖模型中该属性的setter以
当数据库中的值(位)设置为NULL时,如何设置默认值.现在我收到一个错误,告诉我从数据库加载bool时它不能为NULL.

谢谢.

解决方法

您的模型必须与数据库匹配 – 如果数据库可能具有NULL值,您应该在模型中使用可空的bool – 但是您可以覆盖模型中该属性的setter以将NULL转换为false值:
public class Foo
{
    private bool _bar;
    public bool? Bar
    {
        get { return _bar; }
        set
        {
            if (!value.HasValue)
            {
                _bar = false;
            }
            else
                _bar = value.Value;
        }
    }
}

理想情况下,您应该避免这种情况并在数据库列中设置默认值 – 然后您不需要此解决方法.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读