2013-10-29 34 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がより幸せになったと私はもうエラーが発生していない。 –

+0

スクリプトタグ内では<! - を使用しないでください。個々の行をコメントするには//を使用し、コメントブロックには/ * * /を使用します。 – dgarbacz

答えて

87

私はiisの古いアプリと同じ問題を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

Visual Studioでのブラウザのリンクを無効に乾杯、 Crocked

+1

+1あなたのおかげで、私は5時間のグーグルではなく、これを解決するのに5秒しかかかりませんでした。この回答は1つとしてチェックする必要があります。 –

+6

+1これはVisual Studio 2013を使用しているときにも私にとって問題を引き起こしていたものでした。**ブラウザリンク**を無効にするには、ツールバーの[ブラウザリンクの更新]矢印をクリックし、[ブラウザリンクを有効にする]チェックボックスをオフにします。 –

+2

ブラウザリンクを無効にするには、web.configに挿入する必要があります。appSettings

5

2013は単に "のチェックを外し、私の場合には、これを固定ブラウザのリンクを有効にする(実行ボタンの近く)

0

Webアプリケーションのプロジェクト設定に間違ったURLがありました。私のローカルIISで正しいアドレスを使用するように設定を更新すると、私の問題が解決されました。

IISで設定された別の仮想ディレクトリがプロジェクトのプロパティで指定されたものと比較して、問題が発生しました。私はまた、オープニング再開ソリューションが自動的に

2

蘭この横切り、最初私は、プロジェクトの実行を持っていたので、どこをクリックして見ていなかった時に自動的にIIS

のp作業仮想ディレクトリを作成することに注意してください。ここで

スクリーンショット 「Visual Studioの2013年に、ブラウザのリンクを無効にするには、この問題を解決するようです。」である

enter image description here

関連する問題