public static IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequestMessage req, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request."); ProviderSynchronise ps = new ProviderSynchronise(); List <ProviderService.ProviderRecordStructure> output = ps.SynchroniseProviders(DateTime.MinValue, log); //var serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); //System.IO.File.WriteAllText("C:\out.json", serializer.Serialize(output)); JsonSerializer serializer = new JsonSerializer(); serializer.Converters.Add(new JavaScriptDateTimeConverter()); serializer.NullValueHandling = NullValueHandling.Ignore; //string path = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString() + ".json"); //using (StreamWriter sw = new StreamWriter(path)) //using (JsonWriter writer = new JsonTextWriter(bw)) MemoryStream ms = new MemoryStream(); using (StreamWriter sw = new StreamWriter(ms)) using (JsonWriter writer = new JsonTextWriter(sw)) serializer.Serialize(writer, output); //return req.CreateResponse<string>(HttpStatusCode.OK, JsonConvert.SerializeObject(output)); return(new FileContentResult(ms.ToArray(), "file/text") { FileDownloadName = "download.json" }); }
public static void Run([TimerTrigger("0 0 0 */1 * *")] TimerInfo myTimer, ILogger log) // Every 24 hrs normally //public static void Run([TimerTrigger("0 */1 * * * *")]TimerInfo myTimer, ILogger log) { // Every minute for debug { log.LogInformation($"C# Timer trigger function executed at: {DateTime.Now}"); ProviderSynchronise ps = new ProviderSynchronise(); List <ProviderService.ProviderRecordStructure> output = ps.SynchroniseProviders(log); log.LogInformation($"Inserting {output.Count} providers to CosmosDB providers collection"); Task <bool> task = new ProviderStorage().InsertDocs(output, log); }
public static async Task <HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequestMessage req, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request."); ProviderSynchronise ps = new ProviderSynchronise(); List <ProviderService.ProviderRecordStructure> output = ps.SynchroniseProviders(DateTime.MinValue, log); log.LogInformation($"Inserting {output.Count} providers to CosmosDB providers collection"); Task <bool> task = new ProviderStorage().InsertDocs(output, log, true); // Truncate collection first task.Wait(); return(req.CreateResponse <string>(HttpStatusCode.OK, JsonConvert.SerializeObject(output))); }