- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的应用程序在 Sql CE 数据库之上使用 Entity Framework 5.0 代码优先。到目前为止,我们已经使用自动迁移来管理实体映射更改。但是,我现在有一个更改,我需要为其创建自定义迁移以确保在更新期间不会丢失任何数据。我对实体进行了更改,并使用了为我生成 Up() 和 Down() 方法的 Add-Migration 命令。我自定义了 Up() 方法来插入我的自定义 sql 来保存数据,并测试了我的应用程序。
当我运行应用程序时,我收到错误:
Unable to update database to match the current model because there are pending changes and automatic migration is disabled. Either write the pending model changes to a code-based migration or enable automatic migration. Set DbMigrationsConfiguration.AutomaticMigrationsEnabled to true to enable automatic migration.
好吧,我不明白这一点,因为我的所有更改都在执行的 Up() 方法中进行了详细说明。所以我重新打开自动迁移,看看会发生什么。现在我收到此错误:
"Cannot alter column of type NTEXT or IMAGE [ Column Name = LastName ]"
这个错误来自一个表/实体,它甚至没有被我的更改所触及。现有数据库已将该字符串映射到 nvarchar(4000)。如果我在收到此异常后检查数据库,我会发现列已更改为 ntext。英孚在做什么?为什么要触摸未更改的表?我如何才能获得有关这里发生的事情的更多信息?
更新:作为一种变通方法,我尝试使用这样的数据注释来标记实体中的每个字符串类型:
[Column(TypeName = "ntext")]
public virtual string LastName
{
get;
set;
}
现在我所有的字符串都在数据库中使用 ntext。这会在执行查询时导致进一步的异常:
The ntext and image data types cannot be used in WHERE, HAVING, GROUP BY, ON, or IN clauses, except when these data types are used with the LIKE or IS NULL predicates.
总结一下:
最佳答案
对我来说,对 Up
方法的修改就成功了。
SerialNumber = c.String(maxLength: 99)
被应用而不是
SerialNumber = c.String()
关于entity-framework - EF 代码优先迁移 : SqlCeException altering NTEXT column,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16589104/
基本上,我有一个 LINQ 数据库上下文及其模型。通常,如果数据库不存在,我会在 SQL 上下文中创建数据库(上下文是单例,并且在每次访问它时都会检查)。 如果我在第一次启动时将数据添加到数据库,一切
我们在 web.config 中存储了一个用于构建 SQL Server CE 连接字符串的模板。并使用 string.format设置数据源和临时路径值。 在 web.config ,DB连接字符串
我正在编写一个使用 SQL CE 的 Windows 移动应用程序。当我包含 WHERE Barcode = @Barcode 语句时,它不会返回任何行。 我猜这是因为 Barcode 的值后面有尾随
我的应用程序在 Sql CE 数据库之上使用 Entity Framework 5.0 代码优先。到目前为止,我们已经使用自动迁移来管理实体映射更改。但是,我现在有一个更改,我需要为其创建自定义迁移以
我是一名优秀的程序员,十分优秀!