У меня есть основные рамки задач, где такие задачи, как:Развертывание и запуск сборок .NET на рабочем компьютере
- делает некоторую обработку контента
- генерации отчетов
- журнал ошибок Watcher
- почтовик
- т.д.
инкапсулируются в ITask
, который имеет метод Run
и другие связанные с этим элементы.
Эти задачи выполняются непрерывно по расписанию или по требованию. Они размещаются либо как служба Windows, либо как консольное приложение на рабочем компьютере.
Хост приложение выполняет набор задач с TaskRunner
классом, который может использовать график, нарезание резьбы и т.д.
Я хотел бы иметь возможность развернуть задачу работнику машины в более автоматизированным способом чем выполнять выпуск и делать обновление.
В принципе, я хотел бы иметь возможность отправить процесс и реализацию интерфейса ITask (или другого подкомпонента), который будет запускаться в определенном расписании или с некоторыми настройками.
Я знаю, что могу загружать сборки динамически, и я также видел: MEF.
Каков наилучший способ для этого? Должен ли я создавать реализацию и публиковать библиотеки DLL в известном каталоге, где рабочий процесс может их читать? Должен ли я публиковать DLL как двоичный файл базы данных, чтобы рабочий мог читать?
Знаете ли вы какие-либо хорошие способы или статьи о развертывании сборок в базе данных?Мне интересно узнать о существующих передовых методах, если они есть, о процессе сборки сборки, генерации двоичного кода для нее, сохранения ее в базе данных и последующей загрузки ее из базы данных. Может быть, задача MSBuild? – eulerfx