Я создаю приложение mvc 3, которое будет многожильным, что означает, что он будет использовать одну и ту же базовую структуру данных, но предоставлять разные данные в зависимости от имени домена, используемого для доступа к нему.Заполнение dropdownlists для приложений с множеством арендаторов
Проблема, которую я пытаюсь решить, это. Как лучше всего заполнить несколько выпадающих списков с выбором выбора на основе отображаемого сайта. Чтобы добавить еще одну морщину, мне также необходимо локализовать строки.
Очевидным выбором является просто создать таблицу со столбцами для идентификатора сайта и идентификатора языка, плюс идентификатор поля и значение строки. Это выглядит нормально, но, похоже, также игнорирует возможные механизмы, которые уже существуют для локализации. Мне кажется, что я воссоздаю колесо здесь.
В качестве примера у сайта 1 может быть раскрывающийся список для избранных занятий, а также элементы диапазона, ориентированные на музыкальные интересы. Сайт 2 может иметь одинаковое раскрывающееся меню, но есть предметы, предназначенные для спортивных соревнований.
Так что мой вопрос: как бы вы решили решить эту проблему? Кроме того, в том же ключе ... Если у вас есть списки выбора, например, коды штата, города и т. Д., Вы бы хотели создать отдельные таблицы для заполнения этих данных (таблица состояний, таблица городов и т. Д.) Или вы бы поставили всю эту информацию в общей таблице и иметь идентификатор, чтобы указать, какой выпадающий список должен был использоваться? Первое кажется более нормализованным, но последнее кажется более эффективным (меньше кода для написания).
Я не думаю, что это имеет какое-либо отношение к asp.net-mvc. Multi-tenantcy - довольно язык, агностик, и то, что ваш вопрос больше связан с вопросом проектирования данных. – jfar
Это связано с asp.net-mvc из-за аспектов локализации и того, какие методы локализации предоставляются asp.net-mvc. Кроме того, это связано с тем, как заполняются ниспадающие списки, что отличается от MVC в сравнении с другими структурами. –