Giusto per test, ho voluto provare a fare il parsing di YAML anche in C#.

Da quanto ho capito la libreria più usata è YamlDotNet, installabile tramite NuGet.

Quindi potete installarla direttamente da Visual Studio (come ho fatto io), oppure:

PM> Install-Package YamlDotNet

Attraverso la libreria Octokit, è possibile integrare GitHub nei nostri progetti .NET.

Oggi vediamo come usarla in C#.

Eseguiremo il login, ed estrarremmo qualche info.

Prima di tutto, però, dobbiamo installare la libreria, e possiamo farlo tramite NuGet da Visual Studio.

Oggi stavo giocando con una libreria che richiede la chiamata ai metodi con await.

Ma in C# non si possono usare direttamente nel Main, e non è possibile rendere il Main async.

Quindi come si può aggirare il problema?

Per effettuare un ridimensionamento delle immagini in C#, non abbiamo bisogno di librerie esterne (anche se sono sicuro che ce ne stanno di ottime).

Ci basta usare il namespace System.Drawing.

Se siete dentro ad un progetto console, dovete aggiungere il reference.

Unirest è un libreria per creare richieste HTTP in maniera molto semplice e veloce.

E' disponibile per diversi linguaggi, ed oggi vedremo un esempio con C#.

Per installare la libreria potete usare Nuget.

Ho trovato un utile metodo in C# che ci permette di mettere il pc in standby o in ibernazione.

Può essere utile da richiamare dopo avere lanciato procedure lunghe (cosa che mi è capitata a me tempo fa).

Il metodo si chiama SetSuspendState ed accetta tre parametri:

  • PowerState -> il tipo di operazione da eseguire
  • force -> valore booleano che indica se forzare l'operazione (true), oppure mandare prima un messaggio a tutte le applicazioni aperte (false, che sarebbe più sicuro)
  • disableWakeEvent -> altro valore booleano che indica se accettare eventi che possano riattivare il pc; false indica che questi eventi non sono accettati

Prima di seguire questo tutorial, ricordatevi che dovete "sbloccare" il vostro account, consentendo ad app esterne di connettersi.

Sennò il codice non funzionerà (e questo vale per qualsiasi programma scritto in qualsiasi linguaggio).

Dovreste eseguire il login con l'account che volete usare, ed andare a questa pagina: https://myaccount.google.com/u/0/security?hl=it&pli=1#connectedapps

La creazione di file temporanei in C# è abbastanza semplice.

Usando il metodo Path.GetTempFileName, che si occupa di creare un file temporaneo e restituire il percorso intero.

Dalla documentazione ufficiale:

Questo metodo crea un file temporaneo con estensione TMP. Il file temporaneo viene creato nella cartella temporanea dell'utente, che è il percorso restituito dal metodo GetTempPath.
Il metodo GetTempFileName genererà un IOException se viene utilizzato per creare un file di più di 65535, senza eliminare i precedenti file temporanei.
Il metodo GetTempFileName genererà un IOException se non è disponibile alcun nome di file temporaneo univoco; per risolvere questo errore, eliminare tutti i file temporanei non necessari.

Su Windows uso molto ODBC per connettermi a database non Microsoft (Oracle, Informix, ecc).

Quindi, volendo connettere una mia applicazione in C# al db Oracle, posso direttamente usare la connessione ODBC installata sul pc.

Oggi vediamo proprio un esempio di codice per eseguire questa operazione.

Per un programmino che sto facendo in C#, ho la necessità di indentificare tutti i files con una certa estensione in una determinata directory (file doc e docx per la precisione).

Per ottenere questa lista, abbiamo diverse possiblità, sempre usando DirectoryInfo e FileInfo.

Una prima possibilità è usare il metodo GetFiles, che restituisce un array di FileInfo.

Però non mi piace un granchè, perchè lo trovo poco flessibile nel caso di più estensioni (soprattutto quando non simili come nel mio caso).