2013-10-29 3 views
33

배경 : VB.NET 백엔드가있는 ASP.NET Webforms 응용 프로그램.VirtualPath가 현재 응용 프로그램 루트 외부에 있음

방금 ​​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 행 사이에 빈 줄을 추가하십시오. 그러면 나중에 다시 나타납니다.

이 문제의 원인은 무엇일까요?

+0

이 때문에 기존의 학교 <이 될 수 없습니다! - 스크립트 태그 안에? 나는 그것을 제거하고 IDE가 더 행복해졌으며 더 이상 오류가 발생하지 않는다. –

답변

87

iis의 이전 앱과 Visual Studio에서 실행할 때 동일한 문제가있었습니다. Visual Studio 2013에서 브라우저 링크를 사용 중지하면 문제가 해결 된 것으로 보입니다. 이 기능은 일부 자바 스크립트를 페이지에 삽입하고 최소한이 문제를 발생시킵니다. 내가 IIS와 비주얼 스튜디오에서 이제는 작동을 멈췄다. 비주얼 스튜디오 2013에서 브라우저 링크를 비활성화

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

건배에 대한 좀 더 자세한 술 취한

+1

+1 당신 덕분에, 나는 5 시간의 인터넷 검색 대신 5 초만으로 이것을 해결했습니다. 이 대답은 하나로서 점검되어야합니다. –

+6

+1 Visual Studio 2013을 사용할 때 문제가 발생했습니다. ** 브라우저 링크 **를 비활성화하려면 툴바에서 브라우저 링크 새로 고침 화살표를 클릭하고 '브라우저 링크 사용'을 선택 취소하십시오. –

+2

브라우저 링크를 비활성화하려면 web.config에 삽입해야 할 수 있습니다. appSettings

5

내 경우에는이 고정, 단지 선택 취소 " 브라우저 링크 사용 설정 (실행 버튼 근처)

0

웹 응용 프로그램 프로젝트 설정에 잘못된 URL이 있습니다. 내 로컬 IIS에서 올바른 주소를 사용하도록 설정을 업데이트하면 문제가 해결되었습니다.

IIS에서 프로젝트 속성에 지정된 가상 디렉터리와 다른 가상 디렉터리를 구성했을 때 문제가 발생했습니다. 또한 오프닝 재개 솔루션이 자동으로

2

란이를 통해 먼저 내가 프로젝트 실행을 가지고 있기 때문에 어디를 클릭 보지 않았다 자동으로 IIS

에서

페이지 작업 가상 디렉터리를 만들고 있습니다. 여기

는 스크린 샷 "비주얼 스튜디오 2013에서 브라우저 링크를 비활성화하면이 문제를 해결하는 것"입니다.

enter image description here

관련 문제