Какова лучшая практика в проектах ASP.NET MVC и расширяемых / скинованных системах?

Мне было интересно узнать о лучших практиках создания проекта в MVC, и позволить другим создавать для него расширение / модули / плагины и скины / темы и т. Д.

Например, WordPress хорош в этом. Просто загрузите файл или папку. Или даже просмотрите плагины непосредственно из вашей администрации WP и установите простым щелчком мыши.

У кого-нибудь здесь есть несколько советов о том, как создать проект, который обеспечивает такую ​​гибкость. Для скинов мне может понадобиться реализовать свой собственный viewengine, верно?

Любые хорошие ресурсы и советы будут великолепны.

Спасибо!

2 ответа

Решение

Я закончил тем, что использовал VirtualPathProvider, так как я хотел представления вне приложения. Теперь мы сделали возможным сохранение представлений в базе данных.

Скиннинг не так уж и сложен, просто поменяйте местами таблицы стилей. Для использования другого набора шаблонов, да, вам нужно просто настроить, а не писать свой собственный, viewengine. Это довольно просто, и все, что вам нужно сделать, это попросить MVC искать в разных местах ваши взгляды:

http://www.dotnetguy.co.uk/post/2010/01/31/ASPNET-MVC-e28093-Dynamically-Changing-The-Master-Page-(Theming).aspx

Вопрос виджетов плагинов MVC задавался ранее:

https://stackru.com/questions/2230482/asp-net-mvc-2-widgets/2230833

Другие вопросы по тегам