ASP.NET MVC Тематика Лучшая практика? - PullRequest
2 голосов
/ 15 февраля 2012

Теперь стало требованием, чтобы мой существующий проект требовал разной «темы» для разных клиентов.Мне никогда не приходилось делать это в проекте ASP.NET MVC, и похоже, что ASP.NET Theming и MVC не очень хорошо сочетаются друг с другом.

Я бы сказал, что 75% CSS останетсято же самое с остальным быть изменчивым.Не нужно было бы переключаться на лету, поскольку они будут развернуты в виде отдельных веб-сайтов (возможно, на разных серверах).

Просто интересно, был ли предпочтительный метод для выполнения такого рода операций?вещь?Я думал о том, чтобы просто иметь базовый CSS с отдельными «специфичными для клиента» с переопределяющими правилами.Имя клиента CSS может быть затем установлено в web.config и перенесено на главную страницу для объявления.

Я на правильном пути?

1 Ответ

3 голосов
/ 16 февраля 2012

Мы делаем это с помощью подхода, аналогичного описанному вами. Базовый CSS всегда загружается, и переопределения CSS применяются в зависимости от клиента.

Разница в том, что мы не используем appSetting, хотя вы могли бы. Все наши клиенты находятся на одном сервере, поэтому мы управляем им с помощью куки. Когда пользователь входит в систему, мы принимаем участие после символа @ в его адресе электронной почты и устанавливаем файл cookie, соответствующий идентификатору клиента. Наши переопределения CSS находятся в папке с тем же именем, что и идентификатор клиента.

Затем у нас есть дочернее действие, которое отображает дополнительные переопределения CSS в разделе head на основе значения cookie.

...