2014-01-31 3 views
1

я сделал ASP.NET MVC 5 проект модульного (съемной) с MEF
На моем сайте пользователи приходят и могут установить новые плагин, удалять их или обновить их
I не знаю, что делать с моим уровнем доступа к данным (я имею в виду, где должны размещаться мои модели)?
Если я создаю новый проект для своих моделей каждый раз, когда пользователь устанавливает/удаляет/обновляет плагин, который показывает обновление проекта, и это не хорошо, потому что dll работает,
что я могу сделать?
пожалуйста, помогите мнеслоя данных (модель) является asp.net MVC MEF

ответ

1

Вместо того, чтобы иметь один класс для одного объекта вы можете иметь, например, 3-х классов для всех:

Тип (Id, Name) недвижимости (TypeId, DataTypeId, Value) PropertyValue (PropertyID , Value)

Это очень гибкий подход, но менее быстрый из-за количества таблиц и запросов.

Добавлено:

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

+0

пользователи добавляют время запуска плагинов, действительно, я не понял, что вы имеете в виду – user3091222

+0

ok, что такое плагин в нашем случае? если он является «реальным» C# -типом, который получен из некоторого вашего базового типа (или реализует некоторый интерфейс), и он находится в сборке, вы можете загрузить эту сборку в память и использовать этот тип с использованием первого кода EF. –

+0

мои плагины - это проекты библиотеки классов, которые становятся частью основного сайта, – user3091222