@ Url.ContentとASP.NET MVCの@Hrefヘルパメソッドが正しく動作しない場合があります。これはlocalhost上の状況で、IIS ExpressではなくIISでホストされるため、URLはたとえばhttp://localhost:12345/index-hrではなくhttp://localhost/MyApp/index-hrのように見えます。私も試してみましたURLが書き換えられたとき@Url.Contentと@Hrefが正しく動作しない
<script src='@Href("~/Scripts/toastr/toastr.js")' type="text/javascript"> </script>
:
<script src='@Url.Content("~/Scripts/toastr/toastr.js")' type="text/javascript"></script>,
と:http://localhost/MyApp/index-hr
:それは状況を除き、偉大なURLを解決
<script src='~/Scripts/toastr/toastr.js' type="text/javascript"></script>
URLのようなものがあるこれは私が私のスクリプトを呼び出す方法です。私のURL /index-hr
が書き換えられ、コントローラHome
とアクションHomeIndex
にマップされます。 URLがhttp://localhost/MyApp/Home
の場合は問題ありませんので、余分なスラッシュ(アプリケーションがローカルIIS上でホストされている場合)が原因で問題にならないかもしれませんが、URLが書き換えられるため問題にはならないかもしれません。 rewitten URLを含む他のページはtoast.jsを読み込みますが、リンクは深いですが、この状況ではtoast.js
を次のURL:http://localhost/Scripts/toastr/toastr.js
に解決します。その結果、404コースになります。それはに解決する必要がありますhttp://localhost/MyApp/Scripts/toastr/toastr.js
私は個人的に親フォルダとしてrootをとる "/Scripts/toastr/toastr.js"が好きです。すべての状況で正しく動作します –
試しました。働いていない。 http:// localhost/MyApp/index-hrが動作していない場合でもURLがhttp:// localhost/MyApp/Homeの場合には動作せず、アクションとコントローラで完全に書き換えられていないURL http:// localhost/Multiweb/Home/HomeIndex –
@UbiquitousDevelopersはこう言っています。うまくいくはずです。一つのキャッチは '"/Scripts/.... "です。これはあなたのフォルダ構造に依存します。 jsファイルをビューにドラッグ・アンド・ドロップし、生成されたパスを確認して、 'src'で同じパスを使用してください。または、@ Scripts.Render( "〜/ Scripts/toastr/toastr.js")を使用してみてください。ただし、 '@ Scripts.Render'はバンドルの目的のためだけです。 – Developer