public async static Task Run([QueueTrigger("watermarkqueue")] PictureWatermarkQueue myQueueItem, ILogger log) { ConnectionStrings.AzureStorageConnectionString = "DefaultEndpointsProtocol=https;AccountName=udemyrealstorageaccount;AccountKey=rzzWG1uOtG1SCvsC1xOz63N9iavDE2IJnbofGMHAAl/wW7oLbKwpWRlhWgiAJBq/CcdGIob1A123cmVVjuC0eg==;EndpointSuffix=core.windows.net"; IBlobStorage blobStorage = new BlobStorage(); INoSqlStorage <UserPicture> noSqlStorage = new TableStorage <UserPicture>(); foreach (var item in myQueueItem.Pictures) { using var stream = await blobStorage.DownloadAsync(item, EContainerName.pictures); using var memoryStream = AddWaterMark(myQueueItem.WatermarkText, stream); await blobStorage.UploadAsync(memoryStream, item, EContainerName.watermarkpictures); log.LogInformation($"{item} resmine watermark eklenmiştir."); } var userpicture = await noSqlStorage.Get(myQueueItem.UserId, myQueueItem.City); if (userpicture.WatermarkRawPaths != null) { myQueueItem.Pictures.AddRange(userpicture.WatermarkPaths); } userpicture.WatermarkPaths = myQueueItem.Pictures; await noSqlStorage.Add(userpicture); HttpClient httpClient = new HttpClient(); var response = await httpClient.GetAsync("https://localhost:44332/api/Notifications/CompleteWatermarkProcess/" + myQueueItem.ConnectionId); log.LogInformation($"Client({myQueueItem.ConnectionId}) bilgilendirilmiştir"); }
public async static void Run([QueueTrigger("watermarkqueue", Connection = "")] PictureWaterMarkQueque myQueueItem, ILogger log) { try { // AzureStorageConstant.AzureStorageConnectionString = "AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;DefaultEndpointsProtocol=http;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;QueueEndpoint=http://127.0.0.1:10001/devstoreaccount1;TableEndpoint=http://127.0.0.1:10002/devstoreaccount1;"; IBlobStorage blobStorage = new BlobStorage(); INoSqlStorage <UserPicture> noSqlStorage = new TableStorage <UserPicture>(); foreach (var item in myQueueItem.Pictures) { using var stream = await blobStorage.DownloadAsync(item, EContainerName.pictures); using var memoryStream = AddWaterMark(myQueueItem.WatermarkText, stream); await blobStorage.UploadAsync(memoryStream, item, EContainerName.watermarkpictures); log.LogInformation($"{item} Pictures added for watermark."); } var userpicture = await noSqlStorage.Get(myQueueItem.UserId, myQueueItem.UserPartitionKey); if (userpicture.WatermarkRawPaths != null) { myQueueItem.Pictures.AddRange(userpicture.WatermarkPaths); } userpicture.WatermarkPaths = myQueueItem.Pictures; await noSqlStorage.Add(userpicture); HttpClient httpClient = new HttpClient(); var response = await httpClient.GetAsync("https://localhost:44392/api/Notifications/CompleteWatermarkProcess/" + myQueueItem.ConnectionId); log.LogInformation($"Client({myQueueItem.ConnectionId}) my process complate."); } catch (Exception e) { Console.WriteLine(e.Message); } }