当我尝试通过 EF 迁移对数据库进行版本控制时,出现错误“从字符串转换日期和/或时间时转换失败”。问题是我的 MS Sql Server 版本(具有高级服务的 Microsoft SQL Server Express Edition(64-少量))。这是一个错误吗?有解决办法吗?
CREATE TABLE [__MigrationHistory] (
[MigrationId] [nvarchar](255) NOT NULL,
[CreatedOn] [datetime] NOT NULL,
[Model] [varbinary](max) NOT NULL,
[ProductVersion] [nvarchar](32) NOT NULL,
CONSTRAINT [PK___MigrationHistory] PRIMARY KEY ([MigrationId])
)
BEGIN TRY
EXEC sp_MS_marksystemobject '__MigrationHistory'
END TRY
BEGIN CATCH
END CATCH
INSERT INTO [__MigrationHistory] ([MigrationId], [CreatedOn], [Model], [ProductVersion])
VALUES ('201203210144184_init', '2012-03-21T18:23:13.525Z', 0x33, '4.3.1');
编辑
没关系。这与 EntityFramework 无关。如果我的 SQL Server 数据库配置为向后兼容 SQL Server 2000,它将不接受该日期格式。我想除非我可以让 EF 以另一种格式输出它的日期字符串(或者让 SQL Server 向后兼容到 2000 并且仍然理解 EF 日期字符串),否则我将无法在我的数据库中使用 EF 迁移: -(。请让我知道是否有人想出了一种将 EF 与兼容级别 SQL Server 2000 的数据库一起使用的方法。