Sharepoint 2013: Zip архив - PullRequest
       15

Sharepoint 2013: Zip архив

0 голосов
/ 05 ноября 2018

Я хочу скачать архив после вызова ajax, я попытался создать zip-архив в файловой системе (с FileStream), и он работает правильно. Как я могу скачать этот архив из браузера после нажатия кнопки? Код WCF:

 public Result Download(SPDataContract data)
        {
            var result = new Result() { Outcome = OutComeType.KO };
            try
            {
                string rootSiteUrl = SPContext.Current.Site.Url;
                using (SPSite site = new SPSite(rootSiteUrl))
                {
                    var rootWeb = site.RootWeb;
                    using (var memoryStream = new MemoryStream())
                    {
                        using (var archive = new ZipArchive(memoryStream, ZipArchiveMode.Create, true))
                        {
                            foreach (var fileUrl in data.Urls)
                            {
                                var item = rootWeb.GetListItem(fileUrl);
                                var file = archive.CreateEntry(item.File.Name);

                                using (var entryStream = file.Open())
                                {

                                    item.File.OpenBinaryStream().CopyTo(entryStream);
                                }
                            }

                            result.Container = test;
                        }

                    }

                    result.Outcome = OutComeType.OK;
                }
            }
            catch (Exception ex)
            {
                result.SystemMessage = ex.StackTrace;
                result.Outcome = OutComeType.KO;
                result.Message = ex.Message;
            }
            return result;
        }
...