コード例 #1
0
        public static async Task <IActionResult> DeletePlans(
            [HttpTrigger(AuthorizationLevel.Anonymous, "delete", Route = null)] HttpRequest req,
            ILogger log)
        {
            CosmosRepo cosmosRepo = new CosmosRepo(log);

            IEnumerable <Plan> plans = await cosmosRepo.GetItemsAsync <Plan>("select * from c", null);

            log.LogInformation($"Total plans to delete, {plans.Count()}");


            //Update status to Available
            BulkProcessData dataToDelete = new BulkProcessData();

            dataToDelete.ItemData = new List <ItemData>();
            foreach (Plan plan in plans)
            {
                dataToDelete.ItemData.Add(new ItemData
                {
                    Item         = new MemoryStream(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(plan))),            // JsonConvert.SerializeObject(s),
                    ItemId       = plan.id,
                    PartitionKey = plan.__partitionKey
                });
            }
            dataToDelete.Operation = Operation.DELETE;
            await cosmosRepo.BulkProcessData(dataToDelete);

            string responseMessage = $"Total plans to delete, {plans.Count()}";

            log.LogInformation(responseMessage);
            return(new OkObjectResult(responseMessage));
        }
コード例 #2
0
        public static async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = null)] HttpRequest req,
            ILogger log)
        {
            CosmosRepo cosmosRepo = new CosmosRepo(log);

            List <Plan>     plans        = CreateItems();
            BulkProcessData dataToImport = new BulkProcessData();

            dataToImport.ItemData = new List <ItemData>();
            foreach (Plan plan in plans)
            {
                dataToImport.ItemData.Add(new ItemData
                {
                    Item         = new MemoryStream(Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(plan))),            // JsonConvert.SerializeObject(s),
                    ItemId       = plan.id,
                    PartitionKey = plan.__partitionKey
                });
            }
            dataToImport.Operation = Operation.IMPORT;
            await cosmosRepo.BulkProcessData(dataToImport);

            string responseMessage = $"Total Non available plans count, {plans.Where(m=>m.Status!="AVAILABLE").Count()}";

            log.LogInformation(responseMessage);
            return(new OkObjectResult(responseMessage));
        }