Asp.net 来自数据库的实体框架更新模型未为tt类中新添加的表生成cs类
我正在visual studio 2012中使用实体框架5 我有一个现有的模型。现在,我想向现有模型添加一个新表。为此,我打开了edxm文件,并使用右键单击成功地更新了模型 现在,在模型的“EntityTypes”下的“模型浏览器”中,我可以看到表名存在。但是在解决方案资源管理器中,它没有显示我在.tt文件下新添加的表的自动生成的.cs文件 我尝试了“运行自定义工具”,但它没有生成类。也重新启动了Visual Studio,但结果相同 有人能帮我吗Asp.net 来自数据库的实体框架更新模型未为tt类中新添加的表生成cs类,asp.net,asp.net-mvc,entity-framework,asp.net-mvc-4,entity-framework-5,Asp.net,Asp.net Mvc,Entity Framework,Asp.net Mvc 4,Entity Framework 5,我正在visual studio 2012中使用实体框架5 我有一个现有的模型。现在,我想向现有模型添加一个新表。为此,我打开了edxm文件,并使用右键单击成功地更新了模型 现在,在模型的“EntityTypes”下的“模型浏览器”中,我可以看到表名存在。但是在解决方案资源管理器中,它没有显示我在.tt文件下新添加的表的自动生成的.cs文件 我尝试了“运行自定义工具”,但它没有生成类。也重新启动了Visual Studio,但结果相同 有人能帮我吗 谢谢在这种情况下,我要做的就是删除令人兴奋的模
谢谢在这种情况下,我要做的就是删除令人兴奋的模型,然后单击“添加”,然后添加新添加的表格 如果这是位于文件夹中的edmx文件的错误,现在已修复-下载并安装VS 2012 Update 1。您可以从以下网站获得: 我自己解决了 问题出在文件filename.Context.tt和filename.tt中 在这两个文件中指定的变量
const string inputFile
的图表文件名与现有图表文件(.edmx文件)不同。使用现有的关系图文件名更新它,然后从数据库更新模型。现在工作很好 问题
tblEmployee
,但在添加“实体数据模型”后,您已将EDMX文件中的实体tblEmployee
更改为Employee
,然后保存并生成。但更改名称的类不会在Model1.tt文件中自动生成public DbSet<Employee> Employees { get; set; }
公共数据库集雇员{get;set;}
Model1Context context=new Model1Context();
List<Employee> empList= context.Employees.ToList();
Model1Context context=newmodel1context();
List empList=context.Employees.ToList();
这对我有用。
但请记住,在使用VS2012版本的MVC中“使用entityframework创建控制器和视图”时,EF 6.0仍然无法搭建脚手架。
您必须使用EF 5.0或使用新更新更新VS2012。我已将主键添加到新表中。这就解决了问题。有专家吗?您能解释一下吗?这是一个很好的答案。完全删除您的模型并添加新的数据模型。这样文件将再次创建文件并修复。不要只删除模型图中的表。删除模型文件和任何嵌套文件。谢谢。我之前已经解决了这个问题,但我还是接受了这个答案,因为它可能会对其他人有所帮助。这非常有帮助,谢谢。通常自动代码生成对我来说很好,但这次我将实体edmx添加到App_code文件夹下的ASP.NET网站项目中,这可能会导致在使用“从数据库更新模型”从数据库添加新表时无法生成模型中的问题。这非常有用。我已经挣扎了很长一段时间来克服这个问题。它对我起了作用。谢谢继续努力。非常感谢。我已经参与了一个星期了