Можем ли мы использовать Razor на существующем веб-сайте ASP.NET 4? - PullRequest
11 голосов
/ 15 июля 2010

Можно ли использовать Razor на существующем веб-сайте ASP.NET 4?

Ответы [ 3 ]

9 голосов
/ 15 июля 2010

Да, вы можете использовать Razor с существующим веб-сайтом ASP.NET. Просто откройте свой веб-сайт с помощью инструмента WebMatrix и начните добавлять файлы CSHTML. Одно предупреждение: если ваш веб-сайт использует элементы управления WebForms, инструмент WebMatrix не окажет никакой помощи в работе с ними на существующих страницах aspx. Кроме того, Razor не поддерживает WebForms, поэтому вы не сможете добавить что-то вроде <asp:GridView> в файл CSHTML.

2 голосов
/ 24 марта 2011

Вам даже не нужно открывать сайт в Web Matrix, если у вас уже установлены VS2010 и MVC 3 (который включает в себя инструменты Visual Studio для создания веб-сайтов ASP.NET Razor). Установка MVC 3 делает библиотеки, необходимые для разработки страниц Razor, доступными даже для существующих веб-приложений.

См:

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

Вам не нужно создавать новый сайт веб-страниц (согласно инструкциям). Вы можете просто открыть существующий веб-сайт, щелкнуть правой кнопкой мыши корневую папку сайта, нажать «Добавить элемент», и в качестве опции вы увидите «Веб-страница (Razor)».

Inellisense и отладка работают на страницах Razor так же, как на страницах веб-форм

Как указано выше, имейте в виду, что веб-страницы ASP.Net (Razor) и веб-формы ASP.Net действительно являются разными платформами, и повторно используемые компоненты каждой из них не могут (или по крайней мере не должны) использоваться

1 голос
/ 16 июля 2010

marcind верен, если вы хотите открыть существующий веб-сайт ASP.NET в WebMatrix и работать над ним из инструмента. Если, с другой стороны (или в дополнение к этому), вы хотите использовать синтаксис Razor на своем сайте и оставаться в VisualStudio, ознакомьтесь со статьей: http://weblogs.asp.net/rashid/archive/2010/07/10/use-razor-as-asp-net-mvc-viewengine.aspx

Вам нужно сделать четыре вещи:

  1. Добавить ссылки на сборки Razor, установленные с WebMatrix. Их можно найти в C: \ Program Files \ Microsoft ASP.NET \ Веб-страницы ASP.NET \ v1.0 \ Assemblies

  2. Создайте пользовательский класс ViewEngine, класс View, который наследуется от IView (не так сложно, посмотрите на источник в статье выше)

  3. Добавьте свой новый ViewEngine в Global.asax Application_Start()

    ViewEngines.Engines.Add(new RazorViewEngine(("cs"));
    
  4. Создайте страницы просмотра с расширением .cshtml вместо .aspx

Здесь есть несколько шагов, но это быстрая работа, и источник из вышеприведенной статьи поможет вам в этом.

...