asp.net – 在2K3构建服务器上的单元测试中不允许使用’应用程序
发布时间:2020-12-15 22:19:08 所属栏目:asp.Net 来源:网络整理
导读:我正在嘲笑HttpRequestBase,所以我可以在测试代码中创建一个 HtmlHelper并围绕 HtmlHelper扩展方法编写测试.我这样做是设置代码的一部分: httpRequestBase.Stub(h = h.ApplicationPath).Return("~/");httpRequestBase.Stub(h = h.AppRelativeCurrentExecuti
我正在嘲笑HttpRequestBase,所以我可以在测试代码中创建一个
HtmlHelper并围绕
HtmlHelper扩展方法编写测试.我这样做是设置代码的一部分:
httpRequestBase.Stub(h => h.ApplicationPath).Return("~/"); httpRequestBase.Stub(h => h.AppRelativeCurrentExecutionFilePath).Return(appPath); httpRequestBase.Stub(h => h.PathInfo).Return(""); 在两个开发机器上(一个运行XP,一个Vista 64位)工作正常.但是,在Windows Server 2003构建计算机上,当我在HtmlHelper上调用RouteLink()时测试失败,如下所示: System.ArgumentException:此处不允许应用程序相对虚拟路径’?/’. 在这两种情况下,我都使用NUnit 2.4.8和NUnit GUI作为测试运行器.据我所知,其他所有内容都是相同的:相同版本的RhinoMocks(3.5),相同版本的ASP.NET MVC(RTM).我尝试从开发机器上复制二进制文件,而不是使用构建机器上的二进制文件,这没什么区别. 当我将设置代码中的第一行更改为: httpRequestBase.Stub(h => h.ApplicationPath).Return("/"); 测试通过所有机器. 知道为什么吗? 解决方法
“?/”不是ApplicationPath的有效值. “?/”语法的重点是允许您指定相对于ApplicationPath的URL.
对于rooted站点,值应为“/”.对于虚拟目录中的站点,它应该是类似“/ mysite”的值. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – DropDownList烦恼:相同的值不会触发事件
- asp.net – 是否有一个简单的方法来呈现具有Microsoft Web
- asp.net-core – 如何为所有视图设置布局,基类和使用?
- ASP.NET MVC Razor:三元
- 带有子项的ASP.NET自定义/用户控件
- iis-7 – ASP.NET请求队列优先级
- asp.net-mvc – 如何在ASP.NET MVC中将复杂的ViewModel传递
- asp.net-mvc – Kendo ASP.NET MVC – 索引超出范围数据绑定
- asp.net-mvc – ASP.NET Webforms或ASP.NET MVC中的电子商务
- asp.net – 在资源文件中使用HTML
推荐文章
站长推荐
- asp-classic – 如何在经典的asp中制作一个预防s
- asp.net – 已添加具有相同密钥的项目. IIS WCF休
- asp.net-mvc – TDD工作单元模式Moq无法实例化类
- asp.net-mvc – 新手 – 将父视图和子视图合并到
- asp.net-mvc-3 – 同一页面中的两个ValidationSu
- asp.net-mvc – 如何在不使用ASP.Net MVC html助
- asp.net – 要解决的JavaScript难题:window.con
- ASP.NET 2.0和4.0似乎在Forms身份验证中以不同方
- ASP.NET 常用 文件上传方法
- ASP.NET Web Form Project行动平台直立与横放自动
热点阅读