c#中的无参数构造函数

时间:2013-08-07 10:38:41

标签: visual-studio-2010 oop c#-4.0

我正在为Visual Studio 2012中的现有类“Person”编写单元测试,该类具有带有2个参数和一些业务逻辑的构造函数。

TestMethod()        
public void VerifyPersonTest()
{
    //Using PrivateObject class
    PrivateObject privateHelperObject = new PrivateObject(typeof(Person));

    //Some business logic                            

}

当我尝试运行上面的测试时得到一个异常“System.MissingMethodException {”没有为此对象定义的无参数构造函数。“}”。所以我已经为person类添加了无参数构造函数并且能够毫无问题地运行测试。

我有以下问题

1)由于我已将无参数构造函数添加到person类,它是否会破坏Person类的任何现有功能?

2)PrivateObject privateHelperObject = new PrivateObject(typeof(Person));

上面的语句调用person class的无参数构造函数。如果我想调用带有2个参数的构造函数,我该如何写上面的语句?

1 个答案:

答案 0 :(得分:0)

您也可以自己实例化Person对象:

var myPerson = ...;
var privateHelperObject = new PrivateObject(myPerson);