@mletov

Проект на WebApi дествительно может обойтись без Razor?

Читал тут комментарии на тостере. В одном из них автор писал, что у него проект на основе REST на WebApi вообще работает без Razor. Хотел у него уточнить детали, но, к сожалению, потерял топик, поэтому спрашиваю здесь.

Действительно ли есть такая практика обходиться без Razor при компонентном подходе вместо монолитного?
Неужели рентабельно все вытаскивать аяксом через API? И как тогда делается морда проекта? Верстаются файлы типа index.html, в него подключаются css и javascript? А если, например, нужно title или description на страницах для поисковиков, они же должны быть сразу в теле страницы, а не получаться через ajax?

Ну и самое главное, если такое практикуется, то может есть пример на github?
  • Вопрос задан
  • 269 просмотров
Решения вопроса 1
EreminD
@EreminD
Кое-что умею
Так. Ну давайте начнем с MVC, идея которого, разграничивать три функции веб-приложения и делать их заменяемыми. Это значит, что если у вас, например, база была на MSSQL, а стала на MySQL или еще куда переехала, то вам не нужно будет вносить изменения в V и C (при условии, что представление и контроллер действительно не зависят от модели)
Представление V может быть как заменяемым так и отсутствовать вовсе
Razor - это, конечно, интересно, но, честно говоря, в промышленной разработке встретить его довольно сложно
Зато есть уйма проектов на ASP.NET + Angular/Vue/Backbone
Все они работают на идее, что сервер возвращает данные в чистом виде (JSON или XML), а за представление отвечает какой-нибудь веб
Можно смело говорить, что большинство современных веб-проектов выбирают именно подход API + Web. Плюс еще и в том, что т.к. сервер отдает только данные (без разметки), очень легко добавить в проект и мобильное приложение - оно принимает те же данные, но работает с ними по-своему. А, может, ваш API будет использоваться другой системой? Так опять же - данные в чситом виде и не надо будет парсить html

Поэтому:
Действительно ли есть такая практика обходиться без Razor при компонентном подходе вместо монолитного?

Да. И она более предпочтительна

Неужели рентабельно все вытаскивать аяксом через API?

Стоит, т.к. получая данные в "чистом" виде, frontend-разработчики чувствуют себя свободнее в работе с мордой. Ну и плюс, возможность подключить мобилку

И как тогда делается морда проекта?

Все, что вам нравится во фронтэнде (Фреймворки, либы, шаблонизаторы или же просто чистые html, css, js)

А если, например, нужно title или description на страницах для поисковиков, они же должны быть сразу в теле страницы, а не получаться через ajax?

ну ангуляр, например, как-то индексируется гуглом (ну еще бы он не индексировался). На эту тему стоит почитать статьи

Верстаются файлы типа index.html, в него подключаются css и javascript?

Ну и самое главное, если такое практикуется, то может есть пример на github?

Да. Ищите репозитории/книги/видео по словам ASP.NET + Angular - искать будете недолго
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@tison
В случаях, если backend - web api, морда может представлять собой приложение на Angular, React, Vue... Насчет того, могут ли поисковики индексировать страницы таких сайтов или нет, точно сказать не могу, но Google вроде умеет. Если SEO важно, то можно на сервере рендерить представления. Все перечисленные мной фреймворки это умеют
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект
18 апр. 2024, в 21:56
2000 руб./за проект