Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.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
Visual studio 覆盖ToString,等于,。。使用实体框架时在实体中_Visual Studio_Entity Framework_Overriding - Fatal编程技术网

Visual studio 覆盖ToString,等于,。。使用实体框架时在实体中

Visual studio 覆盖ToString,等于,。。使用实体框架时在实体中,visual-studio,entity-framework,overriding,Visual Studio,Entity Framework,Overriding,我想重写实体框架模型生成的实体的ToString、Equals和GetHashCode方法 最好的方法是什么? 现在,我正在手动编辑生成模型的\uuuu Model.Designer.cs文件,但是每次我更改模型时,当然都会丢失这些更改。每个实体都被定义为一个分部类,因此您可以定义一个附加分部类,以使用附加属性或方法扩展实体 假设您已经在EntityModel中定义了一个实体Person 现在,您可以在项目中创建一个新的类文件名Person.cs。在类文件中定义 public partial c

我想重写实体框架模型生成的实体的
ToString
Equals
GetHashCode
方法

最好的方法是什么?


现在,我正在手动编辑生成模型的
\uuuu Model.Designer.cs
文件,但是每次我更改模型时,当然都会丢失这些更改。

每个实体都被定义为一个分部类,因此您可以定义一个附加分部类,以使用附加属性或方法扩展实体

假设您已经在EntityModel中定义了一个实体
Person

现在,您可以在项目中创建一个新的类文件名
Person.cs
。在类文件中定义

public partial class Person{
   // Here you can add your additional functionality or method overrides
}
分部类必须与
Person
实体在同一命名空间和同一程序集中定义


新类文件不受EntityModel中更改的影响(仅当您删除实体或更改属性时,您的部分类可能需要更新)。

非常感谢。不知道我怎么会错过;)