У меня есть вид списка, и я хочу экспортировать все данные в виде файлов txt. В качестве требования мне нужно создать 3 txt-файла, нажав кнопку «Экспорт». У меня есть действие контроллера, чтобы сгенерировать эти файлы и загрузить их в виде zip-файла. Когда я нажимаю кнопку «Экспорт», он вызывает действие «ExportFiles». И в то же время я хочу перенаправить действие «Список», поскольку я хочу обновить представление.Переадресация на просмотр/просмотр обновления после сгенерированных файлов загружается asp.net mvc
Но проблема в том, что я не могу выполнить обе задачи одновременно. Так как я могу это сделать?
Это мой код;
public virtual ActionResult List()
{
// Code : showing my list
return view();
}
public virtual ActionResult ExportFiles()
{
// Code : Generating files
return new ZipResult(filePath, fileName + ".zip");
// HERE I WANT TO REFRESH MY VIEW
}
public class ZipResult : ActionResult
{
private readonly string _filePath;
public string Filename { get; set; }
public ZipResult(string filePath, string fileName)
{
_filePath = filePath;
Filename = fileName;
}
public override void ExecuteResult(ControllerContext context)
{
if (context == null)
{
throw new ArgumentNullException("context");
}
var response = context.HttpContext.Response;
response.ContentType = "application/gzip";
using (var zip = new ZipFile())
{
zip.AddFile(_filePath);
zip.Save(response.OutputStream);
var cd = new ContentDisposition
{
FileName = Filename,
Inline = false
};
response.Headers.Add("Content-Disposition", cd.ToString());
}
}
}