powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как сделать skinning для разных клиентов
8 сообщений из 8, страница 1 из 1
Как сделать skinning для разных клиентов
    #37505287
cavalero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Мы разрабатываем систему, которую планируем продавать как SaaS. Приложение состоит из административной и клиентской частей. При этом, если административная часть будет одинаковая, то клиентский интерфейс, хоть и будет состоять из одинаковых контролов, будет визуально отличасться.
Постоянно выходят апдейты системы и возникает проблема с фронтэндом. Т.е. если каждый клиент имеет свой frontend со своим оформлением, то при обновлении чего-то в клиентской части это нужно сделать N раз по количеству клиентов. Как унифицировать разметку? Чтобы были уникальные masterpage, theme, а все остальное будет у всех одинаковое.
Решение в голову приходит одно: у всех контролов будут одинаковые css классы, которые будут по-разному визуализироваться за счет таблиц стилей. Но мне это решение представляется достаточно сложным. Может быть кто-то эту задачу уже решал тем или иным образом? Буду благодарен за любые идеи.
...
Рейтинг: 0 / 0
Как сделать skinning для разных клиентов
    #37505297
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cavalero,

На чем пишите?
...
Рейтинг: 0 / 0
Как сделать skinning для разных клиентов
    #37505321
cavalero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
C#,WebForms, .NET 3.51
...
Рейтинг: 0 / 0
Как сделать skinning для разных клиентов
    #37505371
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cavalero,

Вам придется иметь несколько MasterPage и класс, который будет определять, какой из MasterPage надо отображать т.е. тему.
В каждом MasterPage прописаны свои css и скрипты, а также картинки для темы:

Content\themes\Default\css
Content\themes\Default\images


Content\themes\Modern\css
Content\themes\Modern\images

Также необходимо написать хелпер для возвращения пути к нужному объекту соответствующей темы
...
Рейтинг: 0 / 0
Как сделать skinning для разных клиентов
    #37505386
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PavluhaТакже необходимо написать хелпер для возвращения пути к нужному объекту соответствующей темы
Например:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
public string GetImageUrl(string masterName, string image)
		{
			var url = string.Format("~/Content/themes/{0}/images/{1}", (string.IsNullOrEmpty(masterName) ? "Default" : masterName.Substring(1)), image);

			return url;
		}

		public string GetStyleSheetUrl(string masterName, string css)
		{
			var url = string.Format("~/Content/themes/{0}/css/{1}", (string.IsNullOrEmpty(masterName) ? "Default" : masterName.Substring(1)), css);

			return url;
		}
...
Рейтинг: 0 / 0
Как сделать skinning для разных клиентов
    #37505416
cavalero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хм, то есть получается, что судя по всему путь наш лежит в область css/master pages / themes ?
В принципе, нет проблем создать под каждого клиента отдельную комбинацию folder+application с тем, чтобы не заморачиваться с выбором путей и тд. Или лучше пойти сразу и разработать для всех унифицированное мультисайтовое приложение?
...
Рейтинг: 0 / 0
Как сделать skinning для разных клиентов
    #37505436
Pavluha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cavaleroХм, то есть получается, что судя по всему путь наш лежит в область css/master pages / themes ?
Думаю так! Конечно, не зная всех тонкостей вашего проекта трудно что-то сказать.

cavaleroВ принципе, нет проблем создать под каждого клиента отдельную комбинацию folder+application с тем, чтобы не заморачиваться с выбором путей и тд. Или лучше пойти сразу и разработать для всех унифицированное мультисайтовое приложение?
2-й лучше
...
Рейтинг: 0 / 0
Как сделать skinning для разных клиентов
    #37505457
cavalero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Pavluha]cavaleroХм, то есть получается, что судя по всему путь наш лежит в область css/master pages / themes ?
Думаю так! Конечно, не зная всех тонкостей вашего проекта трудно что-то сказать.

Классическая комбинация Themes + MasterPage + UserControls, которые динамически загружаются на страницу. Окей, будем думать, если новые мысли появятся -- напишу в ветку обязательно. Спасибо!
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как сделать skinning для разных клиентов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]