venerdì 23 dicembre 2022

FT: Buon Natale e felice anno nuovo

 



E' arrivato il momento più bello dell'anno, quello di trascorrere le giornate con la famiglia, ma soprattutto di recuperare le forze di un anno di grandi impegni e tanti risultati raggiunti.

Un anno di grande successo, che mi ha visto programmare anche in un ambito al quale tenevo tanto, la programmazione IOT, con il Raspberry, sfruttando la tecnologia .Net 6  e .Net 7.

Altra soddisfazione è quella riguardante il mio impegno nel sociale, nell'aiutare le persone, l'ambiente e soprattutto rendere una città come Roma migliore, tanti i miglioramenti nella comunità che ho portato e di cui sono molto fiero e soddisfatto.

Tanti i mesi trascorsi molto bene, devo ammettere un anno meraviglioso sotto ogni punto di vista, anche lavorativamente molte soddisfazioni ma soprattutto quello di far parte di una grande realtà tecnologica che tiene molto al suo capitale umano.

Belle le vacanze con la famiglia, dove ho trascorso momenti indimenticabili, a Pasqua nella bellissima Bolzano, in estate a Lisbona a mangiare il famoso baccalà, ed infine ad inizio autunno nella città della pizza Napoli.

Tante le persone che ho conosciute e molte vere, qualcuna che ha tradito le aspettative, ma si sa, a volte le persone non comprendono che l'amicizia è il vero tesoro.

Un anno di grandi risultati di cui sono molto soddisfatto e soprattutto quello di aver affinato l'amicizia con le persone speciali.

L'unico rammarico e non aver incontrato più spesso alcuni amici, tra cui il grande Luca, ma conto di farlo in questi giorni di ferie o primi giorni dell'anno nuovo.

Un anno da incorniciare e di cui sono molto soddisfatto.

Altri pochi giorni di lavoro e poi due settimane di ferie, per godermi la casa, la famiglia, il quartiere e fare se possibile formazione.

Auguro a tutti di trascorrere le festività con i loro cari, di tanta gioia e felicità e che potete trovate sotto l'albero ciò che più desiderate.

Buon Natale e buon anno ai miei lettori. 

giovedì 22 dicembre 2022

C# effettuare i video con la camera di Raspberry e .Net 6


In questo articolo vedremo come utilizzare la camera situata in una scheda Raspberry PI 4 dei video, e salvare il file.
Con la scheda Raspberry PI 4, ci permette di realizzare applicazioni di tipo Internet Delle Cose (IOT) con il quale possiamo effettuare progetti che vanno oltre all’utilizzo del cellulare e del computer.
Con la tecnologia .Net 6 e successive, e con l’ambiente di sviluppo Visual Studio 2022 Community, vedremo com’è semplice realizzare un’applicazione per la registrazione dei video tramite il linguaggio di programmazione C#.
Con la telecamera possiamo realizzare progetti di video sorveglianza e controllo, per la sicurezza, controllo ambientale, e tanti altri scenari che solo l’ambito IOT si offrire.
Il progetto sarà di tipo Console Application, e salverà in formato mp4 il video registrato fino a quando l’utente non fermerà la registrazione, tramite la digitazione di un pulsante.




Figura 1 - Il video realizzato

Creazione del progetto

Si crea un nuovo progetto di tipo “App Console” , selezionando nel menu delle categorie in alto a destra, la voce “Console” e tra i modelli proposti quello con la dicitura “App Console” Progetto per la creazione di un’applicazione da riga di comando eseguibile in .NET in Windows, Linux e MacOS. Dopo aver selezionato tale progetto facciamo click sul pulsante “Avanti” nella finestra successiva, digitiamo il nome del progetto che vogliamo assegnare e facciamo click sul pulsante “Avanti”, nella finestra successiva selezioniamo la versione del Framework a “6” che è l’ultima.
A questo punto facciamo click sul pulsante “Crea”, in modo da creare il progetto.

Stesura del codice

A questo punto creato il progetto, che ricordiamo che i progetti di tipo “App Console” non hanno interfaccia grafica, dobbiamo aggiungere il componente “UnoSquare.Raspberry.IO” che permette di gestire i vari sensori e sistemi operativi della scheda Raspberry, tra cui le Camere. L’installazione del componente possiamo effettuarlo in due modi diversi o tramite riga di comandi oppure cercando il componente tramite la finestra di “Gestione Pacchetti”.
Nel caso che si vuole installare tramite riga di comando, dal menu strumenti, selezioniamo la voce “Gestione Pacchetti Nuget” e dal sottomenu selezioniamo la voce “Console di Gestione Pacchetti”, a questo punto digitiamo il seguente comando e facciamo click sul pulsante “Invio” della tastiera.

Install-Package Unosquare.Raspberry.IO

Aspettiamo che l’installazione venga completata con successo prima di procede alla stesura del codice.
Qualora invece si vuole installare tramite finestra “Nuget” usando la ricerca del componente, dalla voce di menu “Strumenti” selezioniamo “Gestione pacchetti Nuget” e dal sottomenu la voce “Gestisci Pacchetti Nuget per la soluzione…” , nella finestra che viene aperta, nella paginetta “Sfoglia” digitiamo il componente “unosquare.raspberry.io” (figura 2) , al momento in cui stiamo scrivendo la versione è 0.27.1 con circa 93k installazioni.

Figura 2 - Il componente da installare.

Siamo giunti nella stesura del codice, nel file “Program”, in alto sopra ad ogni dichiarazione dobbiamo aggiungere lo spazio dei nomi (namespace) del componente appena aggiunto.
Lo spazio dei nomi fornisce le classi per gestire le camere di Raspberry, di seguito il frammento di codice delle suddette operazioni.


C#

using Unosquare.RaspberryIO;

using Unosquare.RaspberryIO.Camera;



Dopo aver aggiunto lo spazio dei nomi, scriviamo il codice che tramite metodi e classi, andremo a salvare un file di tipo mp4, nella cartella “pi”. Dopo lo spazio dei nomi, scriviamo subito dopo il codice che tramite il metodo  “OpenVideoStream” avvia la registrazione dei video, mentre tramite il metodo “CloseVideoStream” termina la registazione.
Prima di eseguire il metodo di registrazione, occorre impostare alcune proprietà della camera, permettendo di impostare alcune impostazioni del video che si andrà a creare, come la grandezza del video, il percorso dove salvarlo ed altre informazioni utili.
Al termine della registrazione, verrà visualizzato a video un messaggio con le informazioni del video, quali dimensione e durata.
Di seguito si riporta il frammento di codice delle suddette operazioni.


C#

var videoDimensioneByte = 0;

var videoEventi = 0;

var InizioRegistrazione = DateTime.UtcNow;

 

// Imposta le proprietà della camera tra cui dove salvare il file

var videoSettings = new CameraVideoSettings()

{

    CaptureTimeoutMilliseconds = 0,

    CaptureDisplayPreview = false,

    ImageFlipVertically = true,

    CaptureExposure = CameraExposureMode.Night,

    CaptureWidth = 1920,

    CaptureHeight = 1080,

     VideoFileName = "/home/pi/Video.mp4"

};

 

try

{

    

    

    //Metodo per la registrazione del video

    Pi.Camera.OpenVideoStream(videoSettings,

        onDataCallback: (data) => { videoDimensioneByte += data.Length; videoEventi++; },

        onExitCallback: null);

 

    

    InizioRegistrazione = DateTime.UtcNow;

    Console.WriteLine("Premi un qualsiasi pulsante per terminare la registrazione.");

    Console.ReadKey(true);

}

catch (Exception ex)

{

    Console.WriteLine($"{ex.GetType()}: {ex.Message}");

}

finally

{

    //Metodo per terminare la registrazione

    Pi.Camera.CloseVideoStream();

 

    //Visualizzo a video le informazioni sul file, dimensione, durata di registrazione e quante volte chiamato il metodo

    var DimensioneVideoMB = (videoDimensioneByte / (1024f * 1024f)).ToString("0.000");

    var TerminazioneRegistrazione = DateTime.UtcNow.Subtract(InizioRegistrazione).TotalSeconds.ToString("0.000");

    Console.WriteLine($"Video dimensione {DimensioneVideoMB} Mega bytes in  {videoEventi} chiamate per  {TerminazioneRegistrazione} secondi");

}




Conclusioni

L’articolo ha voluto fornire al lettore le informazioni di basa per poter utilizzare la camera della scheda Raspberry per la creazione di video.
Tramite il componente Unosquare, si possono scrivere interessanti progetti, in maniera rapida e semplice, visto le numerose classi messe a disposizione da questo componente e soprattutto la semplicità nell’utilizzarlo.
Per chi ha già creato progetti per windows application, non troverà difficoltà nel creare applicazioni per l’ambito di internet delle cose (IOT) visto che lo sviluppo in tale ambito è uguale.
Sul sito Kubii, qui https://www.kubii.it/  è possibile acquistare schede, sensori ed altri accessori o materiali per la scheda Raspberry.

mercoledì 21 dicembre 2022

Download immagini gratuite

 


Un sito che fornisce oltre 800 immagini, che si possono personalizzare con differenti colori.

Il sito https://lucide.dev/ permette di scaricare diverse immagini gratuitamente e senza registrazioni o email per diversi usi.

Per maggiori informazioni e download visitate il sito indicato.

domenica 18 dicembre 2022

Download ebook Azure Maps Using Blazor


 

Un ebook in lingua inglese di circa 90 pagine in formato pdf o epub per dispositivi mobile sull'utilizzo di Blazor in ambito di Azure.

L'ebook è gratuito, per scaricarlo occorre registrarsi al sito, per il download e maggiori informazioni visitate il seguente sito https://www.syncfusion.com/succinctly-free-ebooks/azure-maps-using-blazor-succinctly

sabato 17 dicembre 2022

Componente gratuito .Net godotengine per la creazione di video giochi

 


Giunto alla versione 3.5.1 nel momento in cui stiamo scrivendo, il componente GoDotEngine, engine game che permette la creazione di video giochi con la tecnologia .Net ed in particolar modo con il linguaggio C# .

Uno strumento gratuito ed open source per la creazione di video giochi in 2D e 3D.

Nel sito oltre al download del componente è possibile consultare una guida, una serie di esempi, notizie e tanto altro materiale sulla creazione dei video giochi con questo engine.

Per il download e maggiori informazioni visitate il seguente sito https://godotengine.org/

giovedì 15 dicembre 2022

Strumento online gratuito per trasformare immagini da bianco nero a colori

 

Se state cercando un sito per trasformare le immagini in bianco nero a colori, è possibile farlo con il sito https://colourise.com/ che in forma gratuita e senza registrazioni o email, trasforma le immagini caricare a colori.

Il sito è molto semplice da utilizzare ed una volta caricata l'immagine dal proprio pc, verrà visualizzato il risultato accanto a quella in bianco nero.

Per maggiori informazioni ed utilizzo visitate il sito indicato.


mercoledì 14 dicembre 2022

Componente gratuito per creazione di video giochi

Cocos, è un componente gratuito per la creazione di video giochi, permette la realizzazione di video giochi in 2D o 3D.
All'interno del sito è presente anche un manuale per avvicinarsi all'utilizzo di questo componenete.
Per maggiori informazioni e download visitate il seguente sito https://www.cocos.com/ 

martedì 13 dicembre 2022

Sito online per la creazione di gif animate

 


Il seguente sito https://gifmake.com/ offre la possibilità di creare gif animate unendo due o più immagini.

Il sito è di facile utilizzo e non richiede ne email e ne registrazione.


Strumenti online gratuiti per file pdf

 

Il sito FormatPDF, offre una serie di strumenti online gratuiti senza registrazione e senza email, per la modifica dei file PDF.

Il sito permette di convertire i file, modificarli, diminuire il peso e tante altre operazioni sui file.

Il sito è in lingua inglese ma è facilmente utilizzabile, per utilizzarlo visitate il seguente sito FormatPDF.com - The PDF Converter You Are Looking For

lunedì 12 dicembre 2022

Download gioco Paragon anteprima

 

Disponibile da qualche giorno il gioco sparatutto Paragon in versione anteprima, ossia uscita anticipata, che non è ancora rilasciata definitivamente e quindi potrebbero verificarsi problemi di giocabilità.

Il gioco per sistemi operativi Windows è gratuito e non ha limitazioni.

Per maggiori informazioni e download visitate il seguente sito https://store.epicgames.com/it/p/paragon-the-overprime-0bca60

C# .Net 6 effettuare le foto con la fotocamera in Raspberry PI 4

Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/microsoft-net-framework/art_csharp-effettuare-le-foto-con-la-fotocamera-in-ras_1813.aspx

In questo articolo vedremo come utilizzare la tecnologia .Net 6, in particolar modo il linguaggio di programmazione C# e l’ambiente di sviluppo Visual Studio 2022 Community, per effettuare le foto tramite la fotocamera inserita nella scheda Raspberry PI 4.
L’articolo vuole fornire una piccola introduzione ed informazioni chiare su come gestire le camere delle schede Raspberry, per scattare le foto, il tutto per fare una semplice foto come mostrato in figura 1.

Figura 1 - Utilizzo della camera in Raspberry PI 4

Creazione del progetto

Si crea un nuovo progetto in .Net di tipo “Console Application” selezionando come linguaggio di programmazione “C#” e tra i modelli presenti selezionare quello denominato “App Console” con la descrizione “Progetto per la creazione di un’applicazione a riga di comando eseguibile in .NET in Windows, Linux e MacOS”.
Dopo aver selezionato  tale modello, fate click sul pulsante “Avanti” ed impostate un nome, fate di nuovo click sul pulsante “Avanti” e nella finestra successiva, nella scelta della versione del Framework, selezionate “.Net 6.0 (Supporto a lungo Termine) , a questo punto fate click sul pulsante “Crea”.

Dopo aver creato il progetto, che ricordiamo non ha interfaccia grafica,  dobbiamo aggiungere il componente “UnoSquare.Raspberry.IO” che permette di gestire i vari sensori e sistemi della scheda Raspberry, tra cui le Camere. L’installazione del componente possiamo effettuarlo in due modalità o tramite riga di comandi oppure cercando tramite la finestra di “Gestione Pacchetti”.
Nel caso che si vuole installare tramite riga di comando, dal menu strumenti, selezioniamo la voce “Gestione Pacchetti Nuget” e dal sottomenu selezioniamo la voce “Console di Gestione Pacchetti”, a questo punto digitiamo il seguente comando e facciamo click sul pulsante “Invio” della tastiera.

Install-Package Unosquare.Raspberry.IO


Aspettiamo che l’installazione venga completata con successo prima di procede alla stesura del codice.
Nell’eventualità invece che si vuole installare tramite ricerca del componente, dalla voce di menu “Strumenti” selezioniamo “Gestione pacchetti Nuget” e dal sottomenu la voce “Gestisci Pacchetti Nuget per la soluzione…” , nella finestra che viene aperta, nella paginetta “Sfoglia” digitiamo il componente “unosquare.raspberry.io” (figura 2) , al momento versione 0.27.1 con circa 93k installazioni.

Figura 2  - Il componente da installare.

 

Stesura del codice

Ora che abbiamo configurato il nostro progetto, ed installato il componente per la gestione della camera, dobbiamo scrivere il codice per effettuare le foto.
Il codice è molto semplice, rileva la foto e poi la salva in una cartella di sistema di Raspberry, nella root (cartella principale) di Raspberry.
Prima di scrivere il codice occorre aggiungere il rifermento allo spazio dei nomi per utilizzare le classi del componente. In alto sopra ad ogni dichiarazione, inseriamo lo spazio dei nomi a UnoSquare, di seguito il frammento di codice delle suddette operazioni.

C#

using Unosquare.RaspberryIO;


A questo punto, sempre nella classe “Programm” subito sotto, scriviamo il codice che tramite il metodo “CaptureImageJpeg” della classe “Camera” e della classe principale “PI”, estrapola lo stream di byte (array di byte) passando come parametri le dimensioni dell’immagine che voglia.
Una volta ottenuto lo stream dei dati, verifichiamo se esiste già un file con lo stesso nome su cui vogliamo salvare l’immagine, in tal caso lo eliminiamo, per poi salvarlo tramite il metodo “WriteAllBytes” della classe File. 
Di seguito si riporta il frammento di codice delle suddette operazioni.


C#

Console.WriteLine("Avvio cattura video!");

var ImmagineBytes = Pi.Camera.CaptureImageJpeg(640, 480);

var PercorsoFoto = "/home/pi/ImmagineCamera.jpg";

if (File.Exists(PercorsoFoto))

    File.Delete(PercorsoFoto);

 

File.WriteAllBytes(PercorsoFoto, ImmagineBytes);

Console.WriteLine($"Dimensione immagine: {ImmagineBytes.Length}");

Console.WriteLine("Salvata in: /home/pi/ImmagineCamera.jpg");


Ora non resta che copiare il nostro progetto con tutti i file comprese le dll nella scheda Raspberry ,   dalla console eseguire la dll del nome del progetto (in questo caso il progetto si chiama ConsoleRaspberryCamera) tramite il comando “DotNet”, qualora il Framework è installato, il tutto come mostrato in figura 3.

Figura 3 – Esecuzione del programma dalla finestra dei comandi.

 

Il risultato sarà la creazione di un file immagine riguardante lo scatto di una foto dalla camera installata, il file si troverà nella cartella impostata nel codice per la creazione del file, nel nostro caso nella cartella PI, il tutto come mostrato in figura 4.


Figura 4 – La foto scattata dalla camera installata sulla scheda Raspberry PI 4


Conclusioni 

L’articolo ha voluto fornire al lettore una semplice introduzione all’utilizzo delle camere della scheda Raspberry PI 4, utilizzando il Framework 6 con il linguaggio di programmazione C#, aggiungendo un componente per la gestione della scheda Raspberry PI.
La semplicità del nuovo .Net con l’ambiente di sviluppo Visual Studio 2022 semplifica moltissimo la creazione di applicazioni in ambito di Internet delle Cose (IOT) portando in queste schede con installato un sistema operativo che non sia Windows, il codice C#.
Il programmatore che già scrive programmi in .Net, ed in particolar modo su ambiente Windows Application, non troverà difficoltà a scrivere applicazioni anche per questa tipologia di scenari, vista la semplicità offerta del nuovo .Net 6 e dall’ambiente di sviluppo Visual Studio 2022.

Sul sito Kubii, qui https://www.kubii.it/ è possibile acquistare schede, sensori ed altri accessori o materiali per la scheda Raspberry.

domenica 11 dicembre 2022

Download gioco Wildcat Gun Machine

 


Disponibile gratuitamente e senza limitazioni il gioco di strategia Wildcat Gun Machine, per sistemi operativi Windows.

Fino al 15 dicembre 2022 il gioco si potrà scaricare gratuitamente, dopo tale data il download sarà a pagamento.

Per maggiori informazioni e download visitate il seguente sito Wildcat Gun Machine | Acquistalo e scaricalo subito sull'Epic Games Store

Creazione di immagini gif per la presentazione grafica dei dati

 

Una nuova funzionalità gratuita da parte di Google, la creazione di gif animate per la creazione dei grafici rappresentativi sui dati.

Una volta scelto il tipo di grafico, inserite i dati ed il testo di rappresentazione, è possibile generare l'immagine gif.

Il servizio è gratuito e non richiede ne registrazione e ne email.

Per maggiori informazioni ed utilizzo visitate il seguente sito Data Gif Maker

sabato 10 dicembre 2022

Download gioco Saints Row IV: Re-Elected

 

Disponibile gratuitamente e senza limitazioni il gioco sparatutto Saints Row IV, in lingua italiana per sistemi operativi Windows.

Il gioco è disponibile gratuitamente fino al 15 dicembre 2022 dopo tale data il download sarà a pagamento, per il download e maggiori informazioni visitate il seguente sito Saints Row IV: Re-Elected | Acquistalo e scaricalo subito sull'Epic Games Store 



maui requires android.permission.READ_CONTACTS, or grantUriPermission()

Durante la creazione di applicazioni per Android con il Framework MAUI 7, tramite Visual Studio 2022, può capitare di visualizzare il messaggio di errore "maui requires android.permission.READ_CONTACTS, or grantUriPermission()" nonostante impostati i permessi ad accedere ai contatti tramite il tag di seguito:

<uses-permission android:name="android.permission.READ_CONTACTS" />

Per superare questo blocco, una delle possibile soluzioni può essere l'aggiunta del tag nel file Assembly di Android della versione del SDK.
Di seguito il tag da inserire nel file AndroidManifest.xml .


<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="9"/> 

In questo modo permette di forzare la possibilità di abilitare l'app alla gestione dei contatti.

venerdì 9 dicembre 2022

The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer' registered in the application config file for the ADO.NET provider with invariant name 'System.Data.SqlClient' could not be loaded. Make sure that the assembly-qualified name is used and that the assembly is available to the running application.

Quando si realizzano applicazioni di tipo "Windows Application" in .Net e si crea un pacchetto di installazione, nel caso si utilizza di un database con EntityFramework, occorre aggiungere nel pacchetto d'installazione anche la dll di EntityFramework Sql Server.
Aggiungere alle varie librerie la dll "EntityFramework.SqlServer.dll" nella cartella in cui si trova il file eseguibile.

In questo modo si eviterà il seguente messaggio di errore.


The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer' registered in the application config file for the ADO.NET provider with invariant name 'System.Data.SqlClient' could not be loaded. Make sure that the assembly-qualified name is used and that the assembly is available to the running application. See http://go.microsoft.com/fwlink/?LinkId=260882 for more information.

Strumenti online gratuiti

 


Tanti strumenti online gratuiti che non richiedono ne l'inserimento di indirizzo email e ne registrazione.

Dal seguente sito https://www.free-online-tool.com/ è possibile accedere a diversi strumenti online.


Download programma vpn windscribe

 


Le vpn permettono di navigare in internet in maniera anonima, ma soprattutto nel rispetto della privacy proteggendo il navigatore.

Il programma WindScrive, scaricabile qui https://ita.windscribe.com/ è un programma gratuito ed a pagamento (per alcune versioni) di VPN per vari sistemi.

Il programma è in lingua italiana come anche il sito.

Per il download e maggiori informazioni visitate il sito indicato. 


giovedì 8 dicembre 2022

Nuovi regali per il programma Microsoft Rewards regali per chi naviga in internet

 

Da qualche giorno il programma Microsoft Rewards, qui Concediti un regalo e fai la differenza con Microsoft Rewards il sito, ha nel paniere dei vari regali, nuovi brand.

Tra questi, Mediaworld, Netflix, Flixbus, H&M, Marionnaud, Deliveroo, Douglas, Eataly, Tigros, Asos e Carrefour.

Tanti nuovi premi che si aggiungono a quelli già presenti e che permettono di premiare chi usa costantemente internet.

I premi infatti si prendono in base ad un punteggio ottenuto tramite navigazione internet, risposta a questionari e tanto altro ancora.

Per maggiori informazioni ed iscrizioni visitate il programma Microsoft Rewards riportato di seguito. 

Download gratuito di icone ed immagini svg

 


Il seguente sito https://dryicons.com/ offre la possibilità di scaricare gratuitamente immagini ed icone,  senza inserire email e senza registrazioni.

Un sito con oltre 6000 immagini da utilizzare per vari ambiti.


.Net 7 utilizzo delle doppie virgolette nel testo

Diverse sono le novità presenti in .Net 7 e nel linguaggio di programmazione C# versione 11, che dalla versione 17.4 di Visual Studio 2022 possiamo utilizzare.
Tra queste anche nella sintassi nel testo, come per esempio la possibilità di includere le doppie virgolette nel testo.
A differenze delle versioni precedenti, dove per mettere le doppie virgolette occorreva usare il simbolo della chiocciola o della barra rovesciata, in questa nuova versione, si può raddoppiare il doppio apice.

Di seguito un esempio in .Net 7 e C# 11

 string TestoNuovoNet = """Il testo da inserire tra virgolette è tramite il raddoppio virgolette "testo" """;
Console.WriteLine(TestoNuovoNet);

Mentre qui di seguito nelle precedenti versioni.

string testo = "Il testo da inserire tra virgolette è tramite il simbolo barra rovesciata  \"testo\" ";
Console.WriteLine(testo);

string testoAltro = @"Il testo da inserire tra virgolette è tramite il simbolo chiocciola precedente ""testo"" ";
Console.WriteLine(testoAltro);

mercoledì 7 dicembre 2022

C# 11 .Net 7 List patterns confronto delle list con is

Altra novità di .Net 7 e del linguaggio di programmazione C# versione 11, è quella delle list patterns ossia confrontare le varie liste.
Tramite la parola chiave IS possiamo verificare se un confronto di una lista è vera oppure no.
Di seguito il frammento di codice.
Il primo esempio di lista di tipo string, verifica se i dati presenti nella lista sono uguali a quelli di confronto, vero nel primo caso, false nel secondo.
Nel secondo esempio di lista di tipo int, si verificare se la lista è uguale alla condizione di confronto, nei primi due esempi, se è maggiore il valore della lista nei confronti della condizione, in questo caso avremo due confronti, uno vero e l'altro false, e poi l'ultimo esempio verificare se lista è minore di quella di confronto. 

List<string> nomi = new List<string>() {"Emanuele", "Luca" };

            Boolean risultato = nomi is ["Emanuele", "Luca"]; //true

            risultato = nomi is ["Ema", "Luca"]; //false

//Secondo esempio

            List<int> numeri = new List<int>() { 3, 5 };

            risultato = numeri is [3, 5]; //true

            risultato = numeri is [5, 6]; //false

            risultato = numeri is [> 1, >2]; //true

            risultato = numeri is [> 4, > 1]; //false

            risultato = numeri is [< 5, < 8]; //true


Sito notizie informatiche

Il sito  webappsmagazine, visibile qui https://webappsmagazine.blogspot.com/ offre una serie di notizie interessanti sul mondo web e le varie applicazioni gratuite disponibili.
Il portale è costantemente aggiornato ed in lingua italiana. 
Un sito da tenere nei propri preferiti.

martedì 6 dicembre 2022

Strumento online di estrapolare testo dalle immagini

 


Sempre più applicazioni cloud vengono resi gratuite e pubbliche per i vari utenti, ma pochi sono quelli per estrapolare il testo dalle immagini.

Il sito https://image-to-text-ocr.netlify.app/ offre la possibilità di rilevare il testo dalle immagini, selezionando l'immagine dal proprio pc dopo aver indicato la lingua del testo, tramite il pulsante "extract text" estrapola il testo.


.Net 7 required property Class in C# 11

 Con l'aggiornamento a 17.4 di Visual Studio 2022, viene rilasciata anche la nuova versione del linguaggio di programmazione C# e .Net 7.

Tra le varie novità di questo linguaggio e framework, troviamo la parola chiave required, che possiamo utilizzare nelle classi per rendere le proprietà obbligatorie, quando si inizializza una classe.

Di seguito un esempio.

Supponiamo di creare una classe anagrafica con due proprietà, nome e cognome, obbligatorie, di seguito il frammento di codice delle suddette operazioni.

public class Anagrafica
    {
        public required string Nome { get; set; }
        public required string Cognome { get; set; }
    }

A questo punto quando si inizializza la classe, occorre impostare un valore alle proprietà, altrimenti visualizza il codice come errore, di seguito l'immagine .

Quindi per il funzionamento della parola chiave "Required" occorre impostare le proprietà, di seguito il frammento di codice.

 Anagrafica DatiAna = new Anagrafica(){ Cognome="Mattei",  Nome="Emanuele" };

L'ambiente di sviluppo Visual Studio 2022 17.4 ci fornisce indicazioni sull'obbligo delle proprietà durante la digitazione, come mostrato qui di seguito.



Da considerare che questa parola chiave, l'obbligo della proprietà, non si applica per i membri di tipo private, static e di sola lettura (solo get).

lunedì 5 dicembre 2022

Download icone gratuite su tecnologia innovativa e futuro

 

Il sito https://futicons.com/ offre la possibilità di scaricare gratuitamente e senza lasciare email o registrazione, diverse icone a tema futuro e tecnologia innovativa.


Strumento online convertire immagine a colori in bianco e nero

 


Il seguente sito https://blackandwhite.imageonline.co/ permette la conversione dei file di tipo immagini, trasformandoli da colorati a bianco e nero.

Un valido strumento facilmente utilizzabile e che non richiede nessuna registrazione e nessuna email.


domenica 4 dicembre 2022

Strumento online per convertire i file pdf

 


Se cercate uno strumento online che permette di convertire i file pdf, o estrapolare del testo, il sito https://www.geekersoft.com/pdf-converter-online.html permette di effettuare tali conversioni.

Il servizio online è gratuito e non richiede ne registrazioni e ne email.

Molto facile da utilizzare nonostante è in lingua inglese.



Strumenti gratuiti di sicurezza informatica da bitdefender

 


Numerosi strumenti online gratuiti per la difesa informatica, quelli offerti da BitDefender, scaricabili gratuitamente dal sito ufficiale qui https://www.bitdefender.com/blog/labs/tag/free-tools/ .

Gli strumenti permettono di rimuovere, ove possibile, le varie criticità e problemi causati dai vari attacchi informatici.

Per il download e maggiori informazioni visitate il sito indicato.


sabato 3 dicembre 2022

Ebook SRL o SRLS quale aprire?

 

Se state valutando l'apertura di una società, tra Srl o Srls, il sito il commercialista online, ha realizzato un ebook gratuito per far comprendere al lettore quale azienda può aprire.

L'ebook è gratuito, ma occorre inserire un indirizzo email per ricevere il sito per scaricare il file pdf.

Per maggiori informazioni e per richiedere l'ebook, visitate il seguente sito https://www.ilcommercialistaonline.it/ebook-srl-2022/

Sito online di documentari in italiano sull'Italia

 


Se cercate un sito gratuito con il quale vedere documentari, video sull'arte e cultura italiana, il portale https://www.arte.tv/it/ è quello che state cercando.

Il video che si intende vedere, non richiede ne registrazioni e ne inserimento di email, occorre solo selezionare il video di proprio interesse e vederlo.

Ottima la qualità dei video e contenuti presenti nel portale.

Un sito gratuito di informarsi su alcuni temi dell'arte italiana.


venerdì 2 dicembre 2022

Download RPG in a Box

 


Disponibile gratuitamente la creazione di giochi personalizzati tramite RPG.

Il download è gratuito fino al 8 dicembre 2022 dopo tale data, il download sarà a pagamento.

Per maggiori informazioni e download visitate il seguente sito RPG in a Box | Acquistalo e scaricalo subito sull'Epic Games Store

ebook gratuito Regime Forfettario 2022

 

Il sito il Commercialista online, ha reso gratuitamente un ebook in formato pdf sul regime forfettario.

Per ricevere l'ebook gratuito, occorre inserire nel seguente modulo https://www.ilcommercialistaonline.it/regime-forfettario-2022/ la propria email, per ricevere il link dove scaricare l'ebook.

Per maggiori informazioni e download visitate il sito indicato.


Posta elettronica gratuita con protezione dei dati personali

In questi anni l'uso della posta elettronica è diventato fondamentale ed oggi quasi tutti coloro che fanno uso della grande rete ne hanno almeno uno.

Il seguente sito https://mailfence.com/ offre un servizio gratuito di posta elettronica online, in lingua italiana, che tiene molto alla protezione dei dati personali.

Oltre al servizio di email gratuita, ci sono quelle a pagamento che permettono  di scaricare la posta tramite i programmi di posta elettronica.

Per maggiori informazioni ed altro visitate il sito indicato.


giovedì 1 dicembre 2022

Download gioco Fort Triumph

 


Un bellissimo gioco di combattimento con una valida grafica e fruibilità quello disponibile su epic game per sistemi operativi Mac.

Il gioco in italiano è disponibile gratuitamente fino al 8 dicembre 2022 dopo tale data il download non sarà gratuito.

Per maggiori informazioni e downloadi visitate il seguente sito Fort Triumph | Acquistalo e scaricalo subito sull'Epic Games Store

ebook gratuito Aprire Partita IVA 2022: Ditta individuale o Libero Professionista?

 

Un ebook gratuito in formato pdf e con diverse illustrazioni e spunti per fornire al lettore informazioni utili sull'apertura della partita Iva.

Per scaricare l'ebook, occorre inserire la propria email con il quale si riceverà il link per scaricare il file pdf.

Qui https://www.ilcommercialistaonline.it/aprire-partita-iva-2022/ il sito per ricevere l'ebook.


Creazione di video giochi con .Net

 



Di seguito elenco una serie di siti e materiale per avvicinarsi alla programmazione dei video giochi, in particolare alla creazione di video giochi con la tecnologia .Net ed il linguaggio di programmazione C#

Una buona e valida base di partenza con tanti riferimenti utili per la programmazione .Net per la creazione dei videogiochi per varie piattaforme, con il linguaggio di programmazione C#.

Informazioni su vari componenti ed una serie di tutorial, manuali, esempi ed altre informazioni utili sulla creazione di video giochi in ambito .Net.

Qui https://devblogs.microsoft.com/dotnet/choose-a-net-game-engine/ un post con vari riferimenti sui vari componenti gratuiti, mentre qui https://devblogs.microsoft.com/dotnet/game-development-with-net/ altro post sullo sviluppo dei video giochi.

Qui https://dotnet.microsoft.com/apps/games?WT.mc_id=gamedev-blog-abhamed il nuovo portale per la creazione dei video giochi, mentre qui https://dotnet.microsoft.com/learn/games?WT.mc_id=gamedev-blog-abhamed l'area formativa, qui https://dotnet.microsoft.com/learn/games/unity-tutorial/intro?WT.mc_id=gamedev-blog-abhamed l'area formativa Unity.

Che dire, buona programmazione e buon divertimento.

mercoledì 30 novembre 2022

Strumento online aggiungere testo alle immagini

 


Se cercate uno strumento online per inserire del testo nelle immagini,  che non richieste registrazioni ed indirizzi email, il seguente sito https://instasize.com/add-text-to-photos offre questo servizio.

Dopo aver caricato l'immagine dal proprio pc, è possibile aggiungere il testo o effettuare dei disegni.


Webcam di tutto il mondo

 


Dal seguente sito https://www.webcamtaxi.com/en/ è possibile visitare le webcam presenti in tutto il mondo.

Diviso per nazione, è possibile una volta individuata la nazione, scegliere il luogo.

Un sito molto ben fatto e facile da utilizzare individuando la web cam di proprio interesse.

martedì 29 novembre 2022

C# MAUI inviare SMS in Android send SMS

 

Figura 1 - Preparazione dell'invio SMS


Il frammento di codice illustra una tecnica di come preparare l'invio di un SMS nello smartphone Android (applicabile anche per IOS)  possiamo predisporre l'invio di un SMS come illustrato in figura 1, tramite il framework MAUI e linguaggio C#.

Dopo aver creato un progetto MAUI, nel file "AndroidManifest.xml" inseriamo i seguenti TAG che permettono di inviare gli SMS.

<queries>

<intent>

<action android:name="android.intent.action.VIEW" />

<data android:scheme="smsto"/>

</intent>

</queries>



Passiamo in visualizzazione codice, e nell'evento click di un pulsante utilizzando la classe "SMS" e della proprietà "Default", tramite il metodo "ComposeAsync" si predispone l'invio SMS.

Il metodo accetta come parametri del testo, che è il messaggio da inserire ed un array di String contenente il numero o i numeri dei destinatari.

Tramite la proprietà "IsComposeSupported" verifichiamo se nella versione dello Smartphone è supportato la composizione degli SMS.

Di seguito il frammento di codice delle suddette operazioni per l'invio SMS.


if (Sms.Default.IsComposeSupported)

            {

                string[] Destinatari = new[] { "(650)-555-1212" };

                string testo = "Invio SMS da Codice.";

 

                var messaggioDaInviare = new SmsMessage(testo, Destinatari);

               

                await Sms.Default.ComposeAsync(messaggioDaInviare);

            }