7

Razor 2.0 の条件属性機能に興味があったので、Razor 2.0 を MVC3 アプリに移植してみました。このリンクをたどり、ASP.NET を使用して Windows で単純なアプリ (1HomeControllerつのIndexアクションと 1 つの*~/Views/Home/Index.cshtmlビューを使用) を正常に実行しました。

しかし、Ubuntu の mono ランタイムにアプリをデプロイすると、実行に失敗し、引き続きCannot find viewのエラーが報告されます。

「/」アプリケーションのサーバー エラー ビュー「インデックス」またはそのマスターが見つからないか、検索された場所をサポートするビュー エンジンがありません。次の場所が検索されました: ~/Views/Home/Index.aspx ~/Views/Home/Index.ascx ~/Views/Shared/Index.aspx ~/Views/Shared/Index.ascx ~/Views/Home/Index. cshtml ~/Views/Home/Index.vbhtml ~/Views/Shared/Index.cshtml ~/Views/Shared/Index.vbhtml

私はこのエラーをグーグルで調べました。ほとんどの記事ではビューのコンパイルの問題であると書かれているため、mono が新しい Razor エンジンのコンパイラを適切に使用してIndex.cshtmlをコンパイルできないことが原因であると考えました。

その後、アプリを Razor 1.0 に戻しましたが、mono ではすべて正常に動作します。mono で Razor 2.0 を実行できないのは本当に問題なのでしょうか? または、この問題に対する迅速な解決策はありますか?

ありがとう

4

1 に答える 1

4

Razor ページは、理論的にはバージョン 2.10.x シリーズの Mono で動作しましたが、Microsoft のアセンブリを Linux ボックスにバンドルする必要がありました。

Mono 2.11.1以降、Microsoft が最近 ( 2012 年 3 月) Razor をオープンソース化したため、これらのアセンブリはデフォルトで Mono にバンドルされるようになりました。

したがって、もし私があなたなら、Mono 2.11.3 を試して、問題がすでにアップストリームで修正されているかどうかを確認します。そうでない場合は、 http://bugzilla.xamarin.com/でバグを報告し、それを再現するためのスタンドアロン テストケースを付けて、ここからバグにリンクしてください。

于 2012-08-26T15:56:31.910 に答える