11

既存の ASP.NET 4 Web サイトで Razor を使用することはできますか?

4

3 に答える 3

9

はい、既存の ASP.NET Web サイトで Razor を使用できます。WebMatrix ツールを使用して Web サイトを開き、CSHTML ファイルの追加を開始するだけです。1 つの注意点は、Web サイトが WebForms コントロールを使用している場合、WebMatrix ツールは既存の aspx ページで WebForms コントロールを操作するのに何の助けにもならないということです。<asp:GridView>さらに、Razor は WebForms をサポートしていないため、CSHTML ファイルなどに追加することはできません。

于 2010-07-15T18:10:20.570 に答える
2

VS2010 と MVC 3 (ASP.NET Razor Web サイトを構築するための Visual Studio ツールを含む) が既にインストールされている場合は、Web Matrix でサイトを開く必要さえありません。MVC 3 をインストールすると、Razor ページの開発に必要なライブラリが、既存の Web アプリケーションでも利用できるようになります。

見る:

http://www.asp.net/webmatrix/tutorials/program-asp-net-web-pages-in-visual-studio

(説明に従って) 新しい Web ページ サイトを作成する必要はありません。既存の Web サイトを開き、サイトのルート フォルダーを右クリックし、[アイテムの追加] をクリックすると、オプションとして [Web ページ (Razor)] が表示されます。

Inellisense とデバッグは、Web フォーム ページと同様に Razor ページで機能します。

前述のように、ASP.Net Web ページ (Razor) と ASP.Net WebForms は実際には異なるプラットフォームであり、それぞれの再利用可能なコンポーネントは使用できない (または少なくとも使用すべきではない) ことに注意してください。

于 2011-03-23T21:19:24.347 に答える
1

WebMatrix で既存の ASP.NET Web サイトを開き、ツール内から作業する場合は、marcind が正解です。一方 (またはそれに加えて)、サイトで Razor 構文を使用し、VisualStudio 内に留まりたい場合は、次の記事を確認してください: http://weblogs.asp.net/rashid/archive/2010/07/ 10/use-razor-as-asp-net-mvc-viewengine.aspx

あなたがする必要がある4つのことがあります:

  1. WebMatrix と共にインストールされた Razor アセンブリへの参照を追加します。これらは C:\Program Files\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies にあります。

  2. IView から継承する View クラスであるカスタム ViewEngine クラスを作成します (それほど難しいことではありません。上記の記事のソースを確認してください)。

  3. 新しい ViewEngine を追加しますGlobal.asax Application_Start()

    ViewEngines.Engines.Add(new RazorViewEngine(("cs"));
    
  4. .cshtmlの代わりに、拡張子を使用してビュー ページを作成します。.aspx

ここにはいくつかのステップがありますが、それは簡単な作業であり、上記の記事のソースを参考にすれば、かなりの距離を歩むことができます。

于 2010-07-16T13:35:22.937 に答える