asp.net – VirtualPath位于当前应用程序根目录之外

背景:
ASP.NET Webforms应用程序与VB.NET后端。

我刚刚从Visual Studio 2010升级到Visual Studio 2013和.NET 4.5.1。这段代码以前工作,因为我们在Visual Studio 2005和.NET 2.0。但自从升级我得到这个错误。

在ASCX用户控制中。

<script language="javascript" type="text/javascript">
<!--
function SetItem_<%Response.Write(m_strJSAlias)%>(strValue) {
     $("#<%Response.Write(txtShop.ClientID)%>").attr('value',strValue);
    __doPostBack('frmCorpPortal_Form','');
    void FocusOnNext_<%response.Write(m_strJSAlias)%>;
}

我们现在得到这个错误,我们从来没有得到:

VirtualPath was outside the current application root.
Parameter name: virtualPath 
Description: An unhandled exception occurred during the execution of the current web request.    Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.ArgumentException: VirtualPath was outside the current application root.
Parameter name: virtualPath


Line 4:  <script language="javascript" type="text/javascript">
Line 5:  <!--
Line 6:  function SetItem_<%Response.Write(m_strJSAlias)%>(strValue) {
Line 7:       $("#<%Response.Write(txtShop.ClientID)%>").attr('value',strValue);
Line 8:      __doPostBack('frmCorpPortal_Form','');

如果我玩的文件,并进行无意义的更改,错误消失。示例:在第4行和第5行之间添加空行。然后稍后再返回。

可能是什么原因?

解决方法

我有一个旧的应用程序在iis和从visual studio运行时的相同的问题。禁用浏览器链接在visual studio 2013似乎修复这个。这个功能注入一些javascript到您的页面,并导致这个问题为我至少。因为我禁用它现在它在IIS和Visual Studio工作。

http://techatplay.wordpress.com/2013/10/24/vs2013-asp-net-application-error-virtualpath-was-outside-the-current-application-root/

这里有关于功能的更多细节

http://blogs.msdn.com/b/webdev/archive/2013/06/28/browser-link-feature-in-visual-studio-preview-2013.aspx

干杯,Crocked

相关文章

引言 本文从Linux小白的视角, 在CentOS 7.x服务器上搭建一个...
引言: 多线程编程/异步编程非常复杂,有很多概念和工具需要...
一. 宏观概念 ASP.NET Core Middleware是在应用程序处理管道...
背景 在.Net和C#中运行异步代码相当简单,因为我们有时候需要...
HTTP基本认证 在HTTP中,HTTP基本认证(Basic Authenticatio...
1.Linq 执行多列排序 OrderBy的意义是按照指定顺序排序,连续...