(注: 同様の質問を探してみましたが、最も近い質問はまだ私の質問と一致していないようです。つまり、MVC - アプリケーション ルートが Url.Content/Url.Action を使用して URL に 2 回表示されます)
現在、1 つのドメインで 2 つの ASP.NET MVC 3 RC アプリを実行しています。
mydomain.com/app1
mydomain.com/app2
別のアプリであるため、別のドメイン名にサインアップし、アプリの 1 つへのマスク転送を有効にしました (つまり、 http: //foo.comはhttp://mydomain.com/app1をロードし、ブラウザーで、http://mydomain.com/app1ではなく、http://foo.comのみが表示されます)
MVC が不満を持ち始めるのはここからです。Url.Content() と Html.Action() の両方が予期しない URL を生成します。たとえば、Html.Action() の場合、 がある場合、http://foo.com/about@Html.ActionLink("About", "Index", "About")
を期待しますが、最終的にはhttp://foo.com/ app1 /about になります。
http://foo.com/app1/aboutはhttp://mydomain.com/app1/app1/aboutに変換されるため、明らかにリンクは機能しません。
同様に、Url.Content の場合、 がある場合href="@Url.Content("~/Content/Site.css")"
、ブラウザはスタイルシートの読み込みに失敗します。これは、場所がhttp://foo.com/ app1 /Content/Site.css であると見なされ、http://fooではなく.com/Content/Site.css
MVC に開始ディレクトリを忘れさせる方法はありますか (つまり、生成された URL から" app1/ " を削除しますか?)
お読みいただきありがとうございます。ここで追加情報が必要な場合はお知らせください。