Совет по архитектуре для приложения SPA ASP.NET

Я начинаю новый проект на основе ASP.NET. Приложение будет представлять собой реестр с веб-интерфейсом. Его будут использовать около 3000 пользователей.

Прошло около 4 лет с тех пор, как я в последний раз начинал новый проект, поэтому я «немного» заржавел, когда дело доходит до последних тенденций.

Я хочу, чтобы новое приложение было SPA, поэтому я изучил некоторые фреймворки Javascript MV* и, наконец, остановился на Durandal, Bootstrap (для макета) и пользовательском интерфейсе Kendo от Telerik с помощниками ASP.NET MVC.

Я установил шаблон под названием Hot Towel, который создал настройку проекта Durandal на основе ASP.NET MVC. Однако я вижу, что Views - это html, а не cshtml Razor. Могу ли я по-прежнему использовать файлы cshtml (для работы вспомогательных классов)? Есть ли в этом какое-то падение?

Также я слышал обсуждение того, что при использовании Durandal следует использовать не ASP.NET MVC, а только Web API. Что вы думаете об этом? Я все еще хотел бы использовать помощники MVC здесь и там... или есть веская причина отказаться от него для веб-API?

Есть ли у вас какие-либо другие соображения и рекомендации по настройке нового проекта?

С наилучшими пожеланиями, Эндрю


person user315648    schedule 23.09.2013    source источник


Ответы (1)


Кто-то, кто знает о Durandal больше, чем я, может пролить свет на использование представлений cshtml. Я бы предположил, что вам придется переопределить viewLocator и указать его на действия контроллера, отображающие частичные представления??? (вам нужно, чтобы они были проанализированы движком Razor, чтобы получить правильный HTML).

Что касается использования обычных файлов html, я использовал фантастическую библиотеку под названием knockout-kendo для использования компонентов пользовательского интерфейса кендо в приложениях SPA. Я нахожу его таким же простым в использовании, как и помощники HTML, при этом приложение остается настоящим SPA, и вы затем обслуживаете все свои данные через контроллеры WebAPI.

Надеюсь, это вам поможет.

РЕДАКТИРОВАТЬ: возможно, вы также можете взглянуть на этот ответ Как я могу использовать файлы cshtml с Durandal?. Там есть несколько ответов, которые, кажется, делают то, что вы хотите сделать.

person Excommunicated    schedule 25.09.2013