Копирование файла из исходного пути в путь назначения
Путь Azure указан как D:\home\site\wwwroot\Templates
. В папке «Шаблоны» у меня есть один файл Excel с именем ExportTemplate.xlsx. Это статический шаблон с закладками. Я делаю копию этого файла с другим именем в том же месте, т.е.: D:\home\site\wwwroot\Templates
.
[AllowAnonymous]
[HttpGet("getRootPath")]
public string GetRootPath()
{
try
{
string sourcePath = string.Empty;
string ReturnMsg = "Success";
sourcePath = "Templates\\" + "ExportTemplate" + ".xlsx"; ;
sourcePath = sourcePath.Replace("\\", "/");
Guid id1 = Guid.NewGuid(); // New File Name
string path = _hostingEnvironment.ContentRootPath; // It will return D:\home\site\wwwroot\
string destinationPath = Path.Combine(path, "Templates\\");
string path1 = Path.Combine(_hostingEnvironment.ContentRootPath, sourcePath);
FileInfo f1 = new FileInfo(sourcePath);
if (f1.Exists)
{
if (!Directory.Exists(destinationPath))
{
Directory.CreateDirectory(destinationPath);
}
f1.CopyTo(string.Format("{0}{1}{2}", "Templates", id1, f1.Extension));
}
return ReturnMsg;
}
catch (Exception ex)
{
return ex.Message.ToString();
}
}
Использую этот файл копирования в OpenXML
DocumentFormat.OpenXml.Packaging.SpreadsheetDocument doc = DocumentFormat.OpenXml.Packaging.SpreadsheetDocument.Open(destinationPath, true)
В Local работает нормально. Но после публикации в Azure выдает ошибку как
"Не удалось найти файл
. 'D: \ главная \ сайт \ Wwwroot \ Templates \ cbc5aa20-dae9-4a69-b6c4-4f552211d06b.xlsx' "
Я могу читать статический файл в Azure, потому что я сохранил свойство файла статического шаблона для параметра Копировать в выходной каталог и всегда копировать. Вот почему я могу читать файлы из этой папки. Но копирование с новым именем в Azure не сработало.
Пожалуйста, предложите любую информацию, касающуюся копирования файла в Azure Devops с Asp.net Core 2.0