using Masuit.Tools.AspNetCore.ResumeFileResults.Extensions; using Masuit.Tools.AspNetCore.ResumeFileResults.ResumeFileResult; using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Infrastructure; using Microsoft.Extensions.Logging; namespace Masuit.Tools.AspNetCore.ResumeFileResults.Executor; /// /// 使用本地虚拟路径的可断点续传的FileResult /// internal class ResumeVirtualFileResultExecutor : VirtualFileResultExecutor, IActionResultExecutor { /// /// 执行FileResult /// /// /// /// public virtual Task ExecuteAsync(ActionContext context, ResumeVirtualFileResult result) { if (context == null) { throw new ArgumentNullException(nameof(context)); } if (result == null) { throw new ArgumentNullException(nameof(result)); } context.SetContentDispositionHeaderInline(result); return base.ExecuteAsync(context, result); } public ResumeVirtualFileResultExecutor(ILoggerFactory loggerFactory, IWebHostEnvironment hostingEnvironment) : base(loggerFactory, hostingEnvironment) { } }