У меня есть решение в VS2010 с несколькими проектами, каждый из которых образует слой в моем приложении.У меня есть бизнес-объекты, которые в настоящее время являются объектами без методов, и у меня есть уровень управления, который ссылается на уровень бизнес-объектов в своем проекте.Теперь я думаю, что плохо спроектировал свое приложение и хотел бы переместить методы из вспомогательных классов (которые находятся на другом уровне) в методы, которые я создам в самих бизнес-объектах.
Например, у меня есть объект VirtualMachine, который использует вспомогательный класс для вызова метода Reboot (), который передает запрос на уровень управления.Класс static manager взаимодействует с API, который перезагружает виртуальную машину.Я хочу переместить метод Reboot () в объект VirtualMachine, но мне нужно будет сослаться на уровень управления:
public void Reboot()
{
VMManager.Reboot(this.Name);
}
Поэтому, если я добавлю ссылку на свой проект управления в свой проект сущностей, я получуошибка циклической зависимости, как и должно быть.Как я могу разобраться в этой ситуации?Нужен ли мне еще один уровень между уровнем сущности и уровнем управления?Или я должен просто забыть об этом и оставить все как есть.
Приложение работает нормально, но я обеспокоен тем, что мой дизайн не особенно ориентирован на ООП, и я хотел бы исправить это.