Логические уровни NTier с моделями, обработка CRUDC#

Место общения программистов C#
Ответить
Anonymous
 Логические уровни NTier с моделями, обработка CRUD

Сообщение Anonymous »

Уровни логики NTier с моделями, обработка CRUD
Моя команда рассматривает возможность перепроектирования некоторых наших систем для соответствия следующему шаблону
  • Уровень данных (поддерживается Entity Framework, сначала база данных)
  • Модели (POCOS, а не те же модели, что и в DAL)
  • Логика Уровень (ссылки на уровень данных и модели)
  • Презентация ASP.NET
У нас есть такие модели, как:< /p>

Код: Выделить всё

public class Configuration
{
public int Id { get; set; }
public string Description { get; set; }
}

public class Manufacturer
{
public int Id { get; set; }
public string Description { get; set; }
}

public class Car
{
public int Id { get; set; }
public string Name { get; set; }
public Manufacturer Make { get; set; }

public IEnumerable AvailableConfigurations { get; set; }
}
На уровне логики у нас есть класс CarLogic, например

Код: Выделить всё

public interface ICarLogic
{
void Add(Car);
void Update(Car);
void Delete(Car);
void GetAll(Car);
void GetByManufacturer(ManfacturerId);
}
Схема базы данных
Таблица
Столбцы: идентификатор, модель
Таблица: Конфигурация
Столбцы: Идентификатор, Описание
Таблица: Производитель
Столбцы: Идентификатор, Описание
Таблица: Car_ConfigsСтолбцы: Car_Id_Fk, Configuration_Id_Fk
Итак, теперь вопросы:
  • При вызове обновления на реализаторе ICarLogic, следует ли проверять каждое свойство, такое как AvailableConfigurations, чтобы увидеть, чего нет в базе данных и что необходимо добавить, что находится в базе данных, а не в IEnumerable, что следует удалить, а затем выполнять все обновления таблиц оттуда? /li>
    Если нам следует отказаться от запросов READ, таких как GetAll, GetByManufacturer и т. д., поскольку многие из наших моделей их будут несколько, тогда мы перейдем к GetAllWithConfigurationsAnd.... GetByManufacturer, GetByManufacturerWithConfigurations или просто всегда включать свойства, даже если некоторые модели будут иметь до 10 объединений, когда эта информация даже не нужна вызывающему объекту?


Подробнее здесь: https://stackoverflow.com/questions/272 ... dling-crud
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»