Afl*_*red 19 c# asp.net entity-framework
我的模型包含一个可以为空的datetime属性.我正在使用CodeFirst
 public DateTime? GoDate { get; set; }
我想在该字段中插入一个nullvalue但是EF插入通常的00/00/0001日期而不是null,这也给了我一个错误.
即时通讯使用microsoft sql server 2012.
DateTime? date = null;
var entity = new Model()
                {
                    GoDate = date
                };
DataContext.Models.Add(entity);
DataContext.SaveChanges();
给我错误.
将datetime2数据类型转换为日期时间数据类型会导致超出范围的值.\ r \n语句已终止.
这是因为sql server datetime不能有00/00/0001,一旦它将null日期时间插入数据库,EF就会自动生成.
我想在db中插入null.
ta.*_*.is 15
EF插入通常的00/00/0001日期而不是null
它没什么常见的.留给自己的设备,EF 6.1插入NULL.
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var DataContext = new StackOverflowContext();
            DateTime? date = null;
            var entity = new Model()
            {
                GoDate = date
            };
            DataContext.Models.Add(entity);
            DataContext.SaveChanges();
        }
    }
    class Model
    {
        public int ModelId { get; set; }
        public DateTime? GoDate { get; set; }
    }
    class StackOverflowContext : DbContext
    {
        public DbSet<Model> Models { get; set; }
    }
}

您的映射或数据库架构很可能是错误的.
| 归档时间: | 
 | 
| 查看次数: | 37354 次 | 
| 最近记录: |