Как получить путь к файлу в функции Azure? ⇐ C#
-
Anonymous
Как получить путь к файлу в функции Azure?
У меня есть досадная проблема, которую я сначала думал, что смогу решить за несколько минут, но она начинает меня сводить с ума. У меня есть приложение Azure Function под названием «Автомобили». В этой функции Azure есть папка с именем «Шаблоны», а внутри этой папки есть несколько файлов JSON, таких как CarsTemplateOne.json, CarsTemplateTwo.json и т. д. Я хочу прочитать содержимое определенного файла. . Сначала я пытался использовать ExecutionContext, который предоставляется самой функцией
Схема: -Легковые автомобили |-Шаблоны |-CarsTemplateOne.json -Cars.cs
Пример:
попробуйте { строка alertFilePath = Path.Combine(executionContext.FunctionAppDirectory, "Templates", $"{templateName}.json"); если (File.Exists(alertFilePath)) { // Читаем содержимое файла return await File.ReadAllTextAsync(alertFilePath); } еще { _logger.LogError($"Шаблон '{templateName}' не существует в '{alertFilePath}'."); } } улов (IOException ex) { _logger.LogError($"Ошибка чтения файла шаблона: {ex.Message}"); } вернуть ноль; Но когда я развертываю и запускаю функцию, вот результат:
Шаблон «CarsTemplateOne» не существует в «/home/site/wwwroot/Templates/CarsTemplateOne.json».
Я пытаюсь настроить уровни, но безрезультатно
Path.GetFullPath(Path.Combine(context.FunctionDirectory, $"..{Path.DirectorySeparatorChar}CarsTemplateOne.json")) Я заметил, что когда я запускаю функцию локально, создается следующий путь:
"C:\\Users\\username\\source\\repos\\Vehicles\\Cars\\bin\\Debug\\net6.0\\Templates\\CarsTemplateOne.json" Однако в каталоге «bin» такой папки нет. По этой причине локальный пробег также нарушен. Я не уверен, что я испортил.
Спасибо
У меня есть досадная проблема, которую я сначала думал, что смогу решить за несколько минут, но она начинает меня сводить с ума. У меня есть приложение Azure Function под названием «Автомобили». В этой функции Azure есть папка с именем «Шаблоны», а внутри этой папки есть несколько файлов JSON, таких как CarsTemplateOne.json, CarsTemplateTwo.json и т. д. Я хочу прочитать содержимое определенного файла. . Сначала я пытался использовать ExecutionContext, который предоставляется самой функцией
Схема: -Легковые автомобили |-Шаблоны |-CarsTemplateOne.json -Cars.cs
Пример:
попробуйте { строка alertFilePath = Path.Combine(executionContext.FunctionAppDirectory, "Templates", $"{templateName}.json"); если (File.Exists(alertFilePath)) { // Читаем содержимое файла return await File.ReadAllTextAsync(alertFilePath); } еще { _logger.LogError($"Шаблон '{templateName}' не существует в '{alertFilePath}'."); } } улов (IOException ex) { _logger.LogError($"Ошибка чтения файла шаблона: {ex.Message}"); } вернуть ноль; Но когда я развертываю и запускаю функцию, вот результат:
Шаблон «CarsTemplateOne» не существует в «/home/site/wwwroot/Templates/CarsTemplateOne.json».
Я пытаюсь настроить уровни, но безрезультатно
Path.GetFullPath(Path.Combine(context.FunctionDirectory, $"..{Path.DirectorySeparatorChar}CarsTemplateOne.json")) Я заметил, что когда я запускаю функцию локально, создается следующий путь:
"C:\\Users\\username\\source\\repos\\Vehicles\\Cars\\bin\\Debug\\net6.0\\Templates\\CarsTemplateOne.json" Однако в каталоге «bin» такой папки нет. По этой причине локальный пробег также нарушен. Я не уверен, что я испортил.
Спасибо
Мобильная версия