我正在尝试模拟Server.HtmlEncode(),但我一直有一个空引用异常.我是Moq框架的新手,这是我的代码:
var context = new Mock<HttpContextBase>();
var request = new Mock<HttpRequestBase>();
var response = new Mock<HttpResponseBase>();
var session = new Mock<HttpSessionStateBase>();
var server = new Mock<HttpServerUtilityBase>();
server.Setup(svr => svr.HtmlEncode(It.IsAny<string>())).Returns((string s) => s);
context.Setup(ctx => ctx.Request).Returns(request.Object);
context.Setup(ctx => ctx.Response).Returns(response.Object);
context.Setup(ctx => ctx.Session).Returns(session.Object);
context.Setup(ctx => ctx.Server).Returns(server.Object);
Run Code Online (Sandbox Code Playgroud)
我也尝试过以下方法:
context.Setup(ctx => ctx.Server.HtmlEncode(It.IsAny<string>())).Returns((string s) => s);
Run Code Online (Sandbox Code Playgroud)
我找到了一个解决方案,但它似乎是一个过时的解决方案,因为期望被设置取代.
谢谢,Arne