sql-server - EF 2.1 中的播种日期
问题描述
我在 Entity Framework 2.1 中使用新的播种数据方式:
modelBuilder.Entity<Blog>().HasData(new Blog {BlogId = 1, CreateDate = DateTime.Now});
但是,将此应用于数据库会引发异常Conversion failed when converting date and/or time from character string
。我可以看到在生成的 SQL 中,值'2018-06-01T13:22:13.248-07:00'
是错误的。而且由于该字段显然是DateTime
,我无法按照我想要的方式将其格式化为字符串。
它是EF中的错误吗?还是我遗漏了一些明显的东西?在传统的EF 代码中,它可以正常工作:
Blog.CreateDate = DateTime.Now;
...
context.SaveChanges();
或者也许在 SQL 端有一些解决方法可以让它以这种格式获取日期?
解决方案
使用 {[Column(TypeName = "datetime")] 注释
public class Blog
{[Column(TypeName = "datetime")]
public DateTime CreateDate { get; set; }
推荐阅读
- wso2 - wso2 身份服务器 SAML 工件绑定 - 空指针异常
- git-submodules - Circleci:带有 AWS ECR orb 的私有 git subdmodule
- javascript - 如何使用ajax codeigniter将特定的行ID发送到数据库中的新表?
- python - 部署 Django 应用程序后显示错误
- java - 为什么我的 java 程序只能在 GCP 计算引擎的一个核心上运行?
- powershell - Add-PowerBIRow -Dataset Powershell 命令抛出 404 Not found 错误
- javascript - 如何在highcharts中增加权重值小于5的wordcloud权重
- haskell - Haskell 元组单子太严格了?
- c# - RegEx 用于比较具有特殊字符的两个字符串
- umbraco - 如何将 umbraco 中所做的所有更改从一个环境应用到另一个环境