ОК, я не большой авторитет на этом, но ...
Я предполагаю, что причина это может быть плохая идея, вы даете доступ на уровне суперпользователя к приложению, после чего любой код может быть запущен из представления. Также просмотры не будут проверяться или проверяться программистом, они могут не компилироваться или у них могут быть другие проблемы.
Вы можете проанализировать текст, предоставленный пользователем, который формирует представление, и попытаться его дезинфицировать, но это будет сложно. Несмотря на то, что двигатель MVC выглядит так, как ваш CMS выглядит так, будто вы получаете фреймворк для тяжелого подъема для вас, он слишком силен; выражая в коде то, что пользователь не может сделать, сложнее, чем выражать в коде, что они могут делать. Вот почему (возможно) этот сайт использует уценки, а не HTML для разметки в вопросах и ответах.
Что касается базы данных, которая является плохой идеей, я думаю, что люди могут быть против этого из-за воспринимаемой проблемы с ударом db. Однако я не уверен, что это непреодолимая проблема; представление, вероятно, будет кэшировано после того, как оно было jit'ed, хотя я не уверен, вам нужно проверить это. Если это так, вам придется найти способ заставить jit запускаться снова при редактировании вида или вам придется перерабатывать сайт. Я предполагаю, что существует re-jit, потому что, когда вы изменяете файл aspx на некомпилированном сайте, среда получает уведомление о смене файла из ОС, и обновленное представление затем снова запускается в следующий раз при обращении к нему. Даже если я ошибаюсь, и взгляд вырывается из db и каждый раз, когда он используется, вы можете использовать кеширование, чтобы остановить это слишком много.
В некоторых ситуациях лучше всего подходят представления в db, например, если пользователи, создающие представления, являются программистами. Я бы подумал об этом очень осторожно.
Что касается альтернативы, набор инструментов CMS (N2, Orchard и т. Д.) Может быть хорошей идеей.
Я не уверен, почему кто-то проголосует за закрытие, но не могли бы вы добавить комментарий, чтобы объяснить, где я вне линии? – Wade73
Это звучит как вещь, для которой вы, возможно, захотите рассмотреть систему управления контентом. – Andy
Удивительно то, что я делаю. – Wade73