C# 更新edmx模型后,DbContext如何?
我刚开始使用EF5。我创建了一个MSSQL数据库,然后创建了模型(edmx)文件,然后使用“添加代码生成项”创建EF5C# 更新edmx模型后,DbContext如何?,c#,visual-studio-2010,sql-server-2008-r2,entity-framework-5,dbcontext,C#,Visual Studio 2010,Sql Server 2008 R2,Entity Framework 5,Dbcontext,我刚开始使用EF5。我创建了一个MSSQL数据库,然后创建了模型(edmx)文件,然后使用“添加代码生成项”创建EF5dbcontext类 每当我修改数据库(添加列或更改数据类型)时,我都会看到“从数据库更新模型”不起作用,我需要删除并重新创建模型。 这对我来说没关系,但是从model.tt模板文件生成的DbContext类会发生什么情况?我是否还必须再次生成所有DbContext类 使用数据库优先环境并保持.edmx模型和DbContext类与数据库同步的正确方法是什么?在VS2010中,在解
dbcontext
类
每当我修改数据库(添加列或更改数据类型)时,我都会看到“从数据库更新模型”不起作用,我需要删除并重新创建模型。
这对我来说没关系,但是从model.tt
模板文件生成的DbContext
类会发生什么情况?我是否还必须再次生成所有DbContext
类
使用数据库优先环境并保持
.edmx
模型和DbContext
类与数据库同步的正确方法是什么?在VS2010中,在解决方案资源管理器的右上方有一个名为“转换所有模板”的按钮更新生成的类的方法我可以看到两种方法:
1) 使用EF4方法(也可以使用EF5),即使用edmx和数据库优先流。然后,每当数据库中发生更改时,只需从edmx设计器关联菜单中“从数据库更新模型…”。自动更新生成的实体类
2) 使用EF5方法-一次性生成POCO类,不要使用edmx。您可以通过使用实体框架电动工具,然后使用“逆向工程代码优先”来实现这一点。当数据库模型更改时,手动将更改应用于类(这显然只适用于增量数据库更改) 从数据库更新模型后,尝试运行自定义工具
实体模型,并为我进行测试
从实体模型
→ 右击→ 运行自定义工具实际上,如果我在SQL Server中更改字段的数据类型,更新模型不会更新属性。我需要按顺序删除并重新添加表。烦人的