CMF для ASP.NET MVC — насколько вообще применим этот термин и есть ли смысл делать такой фреймворк?
На мой взгляд, самый оптимальный способ висеть на теме разработки сайтов (речь не просто о лендингах, а о сайтах с каким-то собственным бизнес-функционалом, отличным для каждого клиента) - это использование известного вдоль и поперек движка (cms, cmf), у которого есть обширное комьюнити, для которого разрабатываются модули (плагины), который растет в версиях, улучшается безопасность и так далее. Писать каждый раз сайты с нуля - это очень глупое занятие, с этим, наверное, каждый согласится.
Так вот, у php-разработчиков, например, огромный простор для развития - существуют десятки cms/cmf, популярных или не очень, с своими комьюнити, с теми же плагинами и так далее. Не так давно столкнулся с modx - хоть многие и говорят про него, про проект загнулся, однако он вроде продолжает расти в версиях, для него есть куча форумов, для него разрабатываются плагины (платные и бесплатные) с богатым функционалом, и зачастую сделать новый сайт довольно легко, когда можно собрать пакет из набора плагинов, дописать своё и запустить в жизнь.
А вот для .Net такого не встречал особо. Раньше с вебом работал на php, сейчас пытаюсь переключиться на .Net (на самом нете-то уже давно пишу, но в прикладной области) и понимаю, что нет такого разнообразия систем, которыми можно было бы пользоваться. У меня есть свой cmf на asp.net mvc, на основе которого легко можно построить несложный сайт, но развивать его тяжеловато, и тут задумался - ну, попробую переключиться на какой-то известный и развитый проект, чтобы на его волне развиваться. Перебрал список cms - а их почти нет. Десятка полтора набралось (из самых популярных, наверное, orchad cms и nopcommerce, там вроде свежие версии есть).
Взял nopcommerce, стал смотреть, а там даже процесс установки не выглядит чем-то органичным с точки зрения разработчика на VisualStudio - скачай Web Installer Platform package (к слову, он не ставится), либо качай prebuild-версию и ставь на локальный iis, либо качай полный пакет исходников и компилируй. Где, блин, установка из nuget? Я хочу установить один-два пакета и получить полный функционал системы. Вон свою cmf так ставлю - создал пустое mvc приложение, пакет поставил, в Global.asax.cs прописал вместо стандартного HttpApplication класс из cmf - всё, запускается, можно деплоить стандартными средствами VS, причем релиз-поставка cmf пойдет как reference, её не надо собирать.
Orchard CMS сразу требует установки и запуска через WebMatrix, даже пробовать не стал.
На что хоть можно пересесть, чтобы ощутить, что сидишь на удобном развивающемся движке, но ты можешь подключить его себе как EntityFramework, например, и пользоваться функционалом, при этом не надо писать свой архитектурный велосипед над asp.net mvc, чтобы иметь готовые механизмы управления сайтом?
Если нужен небольшой сайт берем MODX, Вротпрес или любой другой движок, "натягиваем верстку", закидываем по FTP на хостинг за 50 рублей и радуемся жизни.
На ASP.NET, Ruby on Rails, Spring, Django и тд ни кто в здравом уме не делает простые сайты.
Тк зачастую нормально настроить сервер, полноценный деплой, CI и прочие ништяки занимает на много больше времени чем в принципе сделать "типичный сайт"
Зря Вы так. Какая разница, на чем написана основа, если фронтенд на Angular/React/Vue в полностью современном стиле можно натянуть на что угодно? Php отличается только тем, что писать плагины на нем проще, т.к. не нужна прекомпиляция, но всё решается компиляцией c# в dynamic assemblies.
Размер современных cms на php измеряется сотнями классов и сложной архитектурой, чем оно проще того же asp.net? Тем более что для внятной реализации mvc на php приходится еще и какой-никакой фреймворк брать в качестве основы, не чистый php.
Итого можно так же взять готовый (.Net mvc движок), натянуть верстку, закинуть по ftp на хостинг за 100 рублей (такие есть) и радоваться жизни.
я пробовал с десяток таких изделий, у себя в бложике записал
ничего внятного не обнаружилось - по факту оказались неудобными для дальнейшего ведения проекта.
вот такой списочек попробуйте, я их тестировал когда стояла задача портал делать на .нет (заказчик был гос.конторой, с купленными виндовыми серваками на всё и вся)
Awesome-CMS-Core
Axinom
BetterCMS
Blogifier
C1 Composite CMS
DNN
Kentico CMS
Kooboo
MojoPortal
N2 CMS
Orchard Project
Piranha
Platformus
Radolet Snegir
Umbraco
ZKEACMS