private void DeleteAssembly(ExtensionLoadingContext ctx, string moduleName)
        {
            var assemblyPath = _virtualPathProvider.Combine("~/bin", moduleName + ".dll");

            if (!_virtualPathProvider.FileExists(assemblyPath))
            {
                return;
            }
            ctx.DeleteActions.Add(
                () =>
            {
                Logger.Information("ExtensionRemoved: 从 bin 目录删除程序集 \"{0}\"(AppDomain将重新启动)", moduleName);
                _virtualPathProvider.DeleteFile(assemblyPath);
            });
            ctx.RestartAppDomain = true;
        }
 public static void DeleteFile(this IVirtualPathProvider pathProvider, IVirtualFile file)
 {
     pathProvider.DeleteFile(file.VirtualPath);
 }
 public string fileDelete(IVirtualPathProvider vfs, string virtualPath)
 {
     vfs.DeleteFile(virtualPath);
     return(virtualPath);
 }