0

我有期望 HttpContext 类型变量的方法。

public string GetQueryStringValues(HttpContext context)

我正在使用 Moq 从文章hanselman 文章中编写单元测试 来创建/填充 HttpContext 并按如下方式传递给方法:

        string url = "http://localhost:51209/WebForm1.aspx?height=6&width=7&length=8&mode=walk";
        HttpContextBase contextbase = MoqHelper.FakeHttpContext(url);
        string result = new Helper(whitelist).GetQueryStringValues(context); 

我收到以下错误消息:

无法从“System.Web.HttpContextBase”转换为“System.Web.HttpContext”

如何在不更改方法 GetQueryStringValues 的签名的情况下解决此问题?

请帮忙。

谢谢

4

1 回答 1

1

不幸的是,如果不更改签名,您将无法做到这一点。但是,使用抽象而不是具体类型,您的签名会更好。

于 2012-05-01T17:40:23.617 回答