Utilizzi SendGrid ed hai la necessità di programmare l’invio di mail in particolari situazioni e/o momenti della giornata? In queste ultime settimane ho rimesso mano ad un progetto basato sull’invio di notifiche tramite posta elettronica e mi sono posto un dilemma su come fare a mandare le mail giuste all’orario corretto. Avevo due possibilità:
Una Azure Function di tipo TimeTrigger ogni X minuti
Una sola Azure Function nella quale veniva calcolata la data di invio corretto e passata a SendGrid
SharedAccessAccountPolicy rappresenta la possibilità per condividere in base ad una serie di criteri l’accesso ad un account tramite un Token specifico. I criteri su cui si basa questa condivisione sono i seguenti:
SharedAccessStartTime
SharedAccessExpiryTime
Permissions
Services
ResourceTypes
Protocols
IPAddressOrRange Come potete vedere le possibilità sono davvero tante. Per generare il SASToken ho scritto una classe di helper pronta all’utilizzo.
DownloadToByteArrayAsync è una delle diverse possibilità messe a disposizione dal CloudBlockBlob per scaricare un file da un BlobStorage di cui abbiamo le credenziali. Per farlo sono necessarie davvero pochissime righe di codice e quelle che troverete qui sotto sono già pronte all’utilizzo.
Se desiderate vedere come caricare (upload) di un file nel BlobStorage tramite CloudBlockBlob UploadFromStreamAsync vi invito a leggere l’articolo della scorsa settimana dal titolo: CloudBlockBlob UploadFromStreamAsync: Upload File BlobStorage
UploadFromStreamAsync è un metodo esposto da CloudBlockBlob e grazie ad esso è possibile caricare i propri file su Azure Blob Storage. Per poterlo usare nel nostro codice sorgente dobbiamo aggiungere il seguente namespace alla nostra classe:
Microsoft.Azure.Storage.Blob
ed una volta inserito il gioco è fatto. Basteranno pochissime righe di codice per ottenere il risultato desiderato.
CloudBlockBlob UploadFromStreamAsync Ecco di seguito le pochissime righe necessarie per potere raggiungere il risultato desiderato ovvero il portare dei file su Azure Blob Storage CloudBlockBlob UploadFromStreamAsync (cs)
La classe Queue in c# è davvero utile e molto semplice da utilizzare quando si vogliono ottenere soluzioni di tipo FIFO (First-In First-Out) con pochissime righe di codice. Per farlo ci bastano due semplici metodi per gestire il tutto
Enqueue
Dequeue
ed ora vediamo come usarli in questo brevissimo esempio di codice Creazione Oggetto Queue (cs)
1 2 3 Queue<string> listOfItems = new Queue<string>(); Aggiunta di nuovi elementi (cs)
Venerdì sera, World of Warcraft a tutto schermo sul mio portatile, il mio Shaman Healer nel pieno di un raid ed il telefono che mi squilla. Rispondo e mi sento chiedere la seguente cosa: **"hai un programmino per rendere RANDOM il nome dei file in una cartella? Se non ricordo male mi dicevi di averlo fatto per te"**. E' vero, il programma lo avevo fatto per me in quanto il mio lettore mp3 aveva un random inutile e così rinominavo tutti i file in maniera assurda.