public PluginManager(IAssemblyManager assemblyManager, IConfigurationRoot configurationRoot,
                             IHostingEnvironment hostingEnvironment, IPluginsUnitOfWork unitOfWork,
                             ApplicationPartManager appPartManager)

        {
            _assemblyManager    = assemblyManager;
            _configurationRoot  = configurationRoot;
            _hostingEnvironment = hostingEnvironment;
            _appPartManager     = appPartManager;

            _unitOfWork = unitOfWork;

            var pluginDir = _configurationRoot.GetValue <string>("PluginDir");

            _pluginDirPath = Path.Combine(_hostingEnvironment.ContentRootPath, pluginDir);

            if (string.IsNullOrEmpty(_pluginDirPath))
            {
                throw new ArgumentNullException("pluginDir");
            }
        }
 public PluginService(IPluginsUnitOfWork unitOfWork)
 {
     this._unitOfWork = unitOfWork;
 }