1

私はasp.net mvc3アプリケーションに取り組んでいます

ビューでいくつかの JavaScript ライブラリを使用したいと考えています。このように含めます

<script type="text/javascript" language="javascript" src="../../Scripts/UserScript.js" ></script>

ローカルでは機能します。ただし、サーバーにデプロイすると、スクリプト ファイルが見つかりません。

私はいくつかの調査を行い、URLを次のように使用していることがわかりましたRoot/Scripts/UserScript.js:Root/MyApplicationName/Scripts/UserScript.js

正しいパスを使用するにはどうすればよいですか? ../../ は相対パスを提供するため、論理的には機能するはずです。なぜルートから始まるのですか?

サーバー上のビルドも確認しましたが、ローカルのものと同じアーキテクチャを持っています (同じフォルダー ツリー)。

ところで、これはどのファイルでも同じです (../../ で始まるすべての写真、スクリプト、CSS)

どんな助けでも大歓迎です

4

2 に答える 2

3

Web サーバー (IIS またはCassini ) はローカルで仮想アプリケーションを使用するため、サイトのルートは、たとえばではなくhttp://localhost/http://localhost/MyApplicationName.

一方、運用サーバーでは、Web サイトがルート アプリケーション (Web サイト) として定義されている完全な IIS インストールです。そのため、ローカルには追加のディレクトリ レベルがあります。

私の意見では、ベスト プラクティスは、完全な IIS (または IIS Express) を開発マシンにインストールし、サイトをルート アプリケーション (Web サイト) として定義することです。に展開しています。

于 2012-07-23T15:53:39.177 に答える
0

Razor 構文を使用して、そのように配置できますか?

<script type="text/javascript" language="javascript" src="@Url.Content("~/Scripts/UserScript.js" )" ></script>
于 2012-07-23T15:55:35.610 に答える