Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/318.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# NUnit中两个对象的相等_C#_Nunit - Fatal编程技术网

C# NUnit中两个对象的相等

C# NUnit中两个对象的相等,c#,nunit,C#,Nunit,我目前正在尝试测试两个C#对象是否相同(不是引用同一个对象,而是具有相同的值)。尝试使用Assert.Equals会给我“Assert.Equals不应用于断言”。我应该使用什么?使用Asset.AreEqual 资产类是对象类的子类(与C#中的任何类一样),当您调用资产.Equals时,实际上调用的是方法对象.Equals,这不是您想要做的 NUnit的程序员可能会在Asset.Equals中设置一个例外,以防止人们犯使用错误的相等方法的错误。Assert.arequals的可能重复项不存在。

我目前正在尝试测试两个C#对象是否相同(不是引用同一个对象,而是具有相同的值)。尝试使用Assert.Equals会给我“Assert.Equals不应用于断言”。我应该使用什么?

使用
Asset.AreEqual

资产
类是
对象
类的子类(与C#中的任何类一样),当您调用
资产.Equals
时,实际上调用的是方法
对象.Equals
,这不是您想要做的


NUnit的程序员可能会在
Asset.Equals
中设置一个例外,以防止人们犯使用错误的相等方法的错误。

Assert.arequals的可能重复项不存在。我使用了Assert.AreEqual()并获得了额外的信息:预期为:a,但实际为:b。。。其中a和b是相同的类:)。若要使两个类相互比较,需要重写要比较的类中的object.Equals方法。Assert.AreEqual正在使用对象的Equals方法进行比较,因为它无法知道要比较对象的字段/属性。以下是一个可能对您有所帮助的链接: