Как преобразовать блок кода Консольного приложения в блок кода функции Azure?
Я написал свое примерное консольное приложение, оно соблюдается и хорошо обрабатывает данные. Теперь я хочу проверить это как функцию Azure. Ниже приведены блоки кода в консольном приложении. Как я могу переписать его как функцию запуска по времени Azure? Благодарю.
using System;
using System.IO;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;
using Google.Apis.Auth.OAuth2;
using Google.Apis.Services;
namespace Google.Apis.Samples
internal class MyData
{
[STAThread]
static void Main(string[] args)
{
Console.WriteLine("Blah Blah Blah");
Console.WriteLine("==============");
try
{
new MyData().Run().Wait();
}
catch (AggregateException ex)
{
foreach (var e in ex.InnerExceptions)
{
Console.WriteLine("Error: " + e.Message);
}
}
}
private async Task Run()
{
// I can either use service account or supply api key.
// How do I read a JSON file from Azure function?
// then I can Get data and display results.
}
}
2 ответа
Итак, я наконец понял это.
Я использовал шаблон функции Azure в VS2017.
Мне нужно добавить пакеты NuGet (мне пришлось использовать Azure V2 для соответствия требованиям зависимости). И я просто должен поместить все коды внутри private async Task Run()
консольного приложения для функций Azure public static void Run([TimerTrigger( ...
,
Мне еще предстоит опубликовать и протестировать его на Azure. Кстати, эмулятор хранилища Azure необходимо инициализировать и запустить в режиме администратора в Windows CMD.
Я не уверен, каково ваше намерение, но если вы хотите закодировать свой код в лазурной функции, возможно, это может вам помочь.
чтобы прочитать файл json, вы можете использовать:
FileStream fs = new FileStream(@"your_json", FileMode.Open)
Здесь вы код в одну функцию Azure
using System.Net;
using System.IO;
public static async Task<HttpResponseMessage> Run(HttpRequestMessage req, TraceWriter log)
{
log.Info("Blah Blah Blah");
log.Info("==============");
try
{
await Run_Function();
}
catch (AggregateException ex)
{
foreach (var e in ex.InnerExceptions)
{
log.Info("Error: " + e.Message);
}
}
return req.CreateResponse(HttpStatusCode.OK, "OK");
}
private static Task Run_Function()
{
// I can either use service account or supply api key.
// How do I read a JSON file from Azure function?
using (FileStream fs = new FileStream(@"your_json", FileMode.Open))
{
// then I can Get data and display results.
}
return null;
}