我收到了这个错误:
结果StackTrace:at UnitTestProject.ControllerTest.TestMethodQuoteEndCustomerSearch() 结果消息:测试方法 UnitTestProject.ControllerTest.TestMethodQuoteEndCustomerSearch扔了 exception:System.MissingMethodException:找不到方法: “System.Web.Mvc.ActionResult QuoteCenter.Controllers.ECSearchController.QuoteEndCustomerSearch(System.String, System.String,System.String,System.String)'。
My Test类看起来像这样:
namespace UnitTestProject
{
[TestClass]
public class ControllerTest
{
[TestMethod]
public void TestMethodQuoteEndCustomerSearch()
{
//arrange
ECSearchController myController = new ECSearchController();
//ISSUE WITH THE NEXT LINE
ViewResult result = myController .QuoteEndCustomerSearch("", "", "", "") as ViewResult;
}
}
}
intellisense知道myController有一个方法QuoteEndCustomerSearch。但是当我调试时,我得到了上述错误。
控制器的方法如下所示:
[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Post)]
public ActionResult QuoteEndCustomerSearch(String quoteId, String CID, String URL, String UserID)
{
//...
return View("QuoteEndCustomerSearch", model);
}
有关我应该尝试使其工作的其他任何提示吗?我处于管理员模式,我重新启动了VS2015。
答案 0 :(得分:2)
问题是我的现有项目有mvc版本5,但新测试项目有更新的版本。一切都好。 当我使用Nuget时,我没有注意到版本不同。 我认为现在是我将所有项目更新到最新版MVC的好时机。