Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 更新EF.edmx文件时丢失属性_C#_Entity Framework - Fatal编程技术网

C# 更新EF.edmx文件时丢失属性

C# 更新EF.edmx文件时丢失属性,c#,entity-framework,C#,Entity Framework,我有一个包含一些域分部类的edmx文件,但我需要手动将[Key]属性放在类的表示主键上 每次我需要更新数据库中的模型类时,都会重新创建edmx文件及其类,并且我丢失了此属性 我也删除了OnModelCreating方法,当edmx更新该方法时,会再次创建该方法,因此我需要手动删除它 我怎样才能预防它? 谢谢所以不要将其放入生成的代码中。问题是什么?如果在图表中而不是在生成的代码中设置密钥,是否会保留该密钥?我不知道你说的是什么意思。你的意思是你删除了它还是添加了你自己的评论?@Adam47评论我

我有一个包含一些域分部类的edmx文件,但我需要手动将[Key]属性放在类的表示主键上

每次我需要更新数据库中的模型类时,都会重新创建edmx文件及其类,并且我丢失了此属性

我也删除了OnModelCreating方法,当edmx更新该方法时,会再次创建该方法,因此我需要手动删除它

我怎样才能预防它?
谢谢

所以不要将其放入生成的代码中。问题是什么?如果在图表中而不是在生成的代码中设置密钥,是否会保留该密钥?我不知道你说的是什么意思。你的意思是你删除了它还是添加了你自己的评论?@Adam47评论我的意思是,删除它。我将编辑op.@Adam47如果我转到edmx图,我可以在这里看到实体键。但即使这样,我也需要在属性中放入参数hardcode。如果我不这样做,它会生成一个错误,您可能应该不使用OnModelCreating方法。如果您真的对此感到困扰,您可以编辑代码生成器模板。至于键,也许您应该从模型中删除表并从数据库中刷新,然后在数据库中找不到时设置键。不要更改生成的代码。