gpt4 book ai didi

c# - 测试私有(private)静态方法抛出 MissingMethodException

转载 作者:可可西里 更新时间:2023-11-01 08:31:45 24 4
gpt4 key购买 nike

我有这门课:

public class MyClass
{
private static int GetMonthsDateDiff(DateTime d1, DateTime d2)
{
// implementatio
}
}

现在我正在对其进行单元测试。由于该方法是私有(private)的,因此我有以下代码:

MyClass myClass = new MyClass();
PrivateObject testObj = new PrivateObject(myClass);
DateTime fromDate = new DateTime(2015, 1, 1);
DateTime toDate = new DateTime(2015, 3, 17);
object[] args = new object[2] { fromDate, toDate };
int res = (int)testObj.Invoke("GetMonthsDateDiff", args); //<- exception

mscorlib.dll 中出现“System.MissingMethodException”类型的异常,但未在用户代码中处理附加信息:试图访问失踪成员。

我做错了什么?该方法存在..

最佳答案

它是一个静态方法,所以使用 PrivateType 而不是 PrivatObject 来访问它。

参见 PrivateType .

关于c# - 测试私有(private)静态方法抛出 MissingMethodException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28547463/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com