#asp.net-core-mvc
Вопрос:
Проблема возникает при загрузке больших файлов (более 240 МБ) через ASP.NET Приложение Core 3.1 и интегрированный API SharePoint. Что особенно интересно, так это поведение. На локальной стороне все отлично работает с каждым файлом, но на сервере большие файлы не могут быть успешно загружены. Сервер возвращает пустой файл размером 0 КБ.
Было предпринято множество шагов, начиная с добавления класса запуска, изменений в действии загрузки файлов, изменения параметров в IIS и даже редактирования редактора реестра. В конце концов ничего не помогло.
public async Task<FileStreamResult> DownloadFile(string serverFileUrl, string fileName)
{
var accToken = GetToken();
var webUrl = "https://...";
var fileUrl = serverFileUrl;
var accessToken = accToken.Result.ToString();
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
var requestUrl = String.Format("{0}/_api/web/getfilebyserverrelativeurl('{1}')/$value", webUrl, fileUrl);
var response = await client.GetAsync(requestUrl, HttpCompletionOption.ResponseHeadersRead);
var fileContent = await response.Content.ReadAsStreamAsync();
return File(fileContent, System.Net.Mime.MediaTypeNames.Application.Octet, fileName, true);
}
}