0

私はT4MVC自分のプロジェクトで使用しています。しかし、 「/ app」などの仮想ディレクトリに展開した後、サイトを実行すると、すべてのアドレスが間違っていました。たとえば、content/site.cssそれが/app/content/site.cssあり、ブラウザがそれを見つけることができないのではなく。

たとえば、次のように書きます。

<link href="@Links.Content.bootstrap_min_css" rel="stylesheet" type="text/css" />

にレンダリングする

<link href="/app/Content/bootstrap.min.css" rel="stylesheet" type="text/css" />

それ以外の

<link href="Content/bootstrap.min.css" rel="stylesheet" type="text/css" />

この問題を解決するにはどうすればよいですか?

4

2 に答える 2

3

通常、これは正しい動作です。アプリが仮想ディレクトリ /app で実行されている場合、静的ファイルは を使用してリクエストできるはずです/app/content/site.css。したがって、最初に焦点を当てるべきは、これが機能しない理由を理解しようとすることです。

本当にこのロジックを変更したい場合はProcessVirtualPath、T4MVC.tt.hooks.t4 を見てください。パスの処理方法を変更したり、必要に応じて簡単に相対パスにすることができます。このファイルを変更した後は、必ず T4MVC カスタム ツールを再実行してください。

于 2012-12-05T18:22:33.660 に答える
0

ビューで .css を参照するために使用するコードを示していただけると助かります。次のようなものだと思います:

<link rel="stylesheet" type="text/css" href="/content/site.css">

(Razor で) 次の方法を使用して、アプリケーション ルートの相対 URL を指定できます。

<link rel="stylesheet" type="text/css" href="@Url.Content("~/content/site.css")">

それが役立つことを願っています。

于 2012-12-04T07:50:19.163 に答える