giovedì 30 giugno 2022

C# ottenere il giorno della settimana localizzato nella lingua dell'applicazione.

Il frammento di codice qui di seguito, illustra una tecnica di come ottenere il giorno della settimana in lingua locale, o meglio della lingua dell'applicazione.

MessageBox.Show(DateTimeFormatInfo.CurrentInfo.GetDayName(DateTime.Now.DayOfWeek).ToString());


Tramite il metodo GetDayName, otteniamo il nome della settimana nella lingua dell'applicazione.

mercoledì 29 giugno 2022

C# ottenere il nome della settimana

Tramite la proprietà DayOfWeek possiamo ottenere il nome della settimana (lunedì, martedì etc) di un determinato giorno.

Di seguito un esempio di codice.

MessageBox.Show(DateTime.Now.DayOfWeek.ToString());

martedì 28 giugno 2022

C# Rilevare il giorno dell'anno

Il frammento di codice qui di seguito, illustra una tecnica per rilevare il giorno dell'anno.
Tramite la proprietà "DayOfYear" è possibile sapere quale giorno dell'anno è il giorno attuale.
Qui di seguito l'esempio.

            MessageBox.Show(DateTime.Now.DayOfYear.ToString());

lunedì 27 giugno 2022

Convertire XSD in Classe

In Visual Studio è possibile convertire un file XSD in una classe , senza scrivere codice il tutto automaticamente dall'ambiente di sviluppo.

Aprite il file XSD con Visual Studio, si può fare anche con il doppio click sul file stesso, una volta aperto il file, dalla finestra "Esplora soluzione" fate click con tasto destro, sulla parte principale del file che l'icona di minore e maggiore di colore verde, dal menu che viene visualizzato, selezionate la voce "Genera XML di esempio" il tutto come in figura 1.


Figura 1 - Il menu per la generazione del file XML 


A questo punto verrà creato un file XML, selezionate tutto il contenuto e copiate tutto il contenuto,  dopo aver creato una classe, fate click sulla voce di menu "Incolla speciale" situato in "Modifica" selezionate la sotto voce "Incolla XML come classe", il tutto come mostrato in figura 2.


Figura 2 - La creazione della classe da XML








sabato 25 giugno 2022

Download gioco Car Mechanic Simulator 2018

 



Disponibile gratuitamente e per sistemi operativi Windows, il gioco di simulazione per le riparazioni delle macchin Car Mechanic Simulator 2018.

Il gioco fino al 30 giugno 2022 è disponibile gratuitamente, dopo tale data, il download sarà a pagamento.

Per maggiori informazioni e download visitate il seguente sito Car Mechanic Simulator 2018 | Acquistalo e scaricalo subito sull'Epic Games Store 

venerdì 24 giugno 2022

Download A Game Of Thrones: The Board Game Digital Edition

 



Disponibile gratuitamente fino al 30 giugno 2022 il gioco A Game Fo thrones che riporta fedelmente il gioco da tavolo, utilizzabile dal pc.

Il gioco è in lingua italiana e per sistemi operativi Windows.

Il download è gratuito fino al 30 giugno 2022 dopo tale data il download sarà a pagamento.

Per maggiori informazioni e download visitate il seguente sito A Game Of Thrones: The Board Game Digital Edition | Acquistalo e scaricalo subito sull'Epic Games Store

giovedì 23 giugno 2022

Microsoft Word tradurre un documento

Nelle nuove versione di Microsoft Office, ed in particolare del programma di video scrittura Microsoft Word, è possibile tradurre un documento o del testo selezionato in un'altra lingua.
Dopo aver scritto del testo e selezionato, occorre andare nella voce di menu "Revisioni" e fare click sulla voce "Tradurre" il tutto come mostrato in figura 1.

Figura 1 - Il menu per la conversione

Dopo aver selezionato la voce "Traduci Selezione" verrà aperta una finestra sulla destra con la traduzione del testo secondo la lingua desiderata, il tutto come in figura 2.




Figura 2 - Testo tradotto 




mercoledì 22 giugno 2022

C# rilevare la settimana dell'anno

Il frammento di codice qui di seguito, permette di rilevare la settimana dell'anno.


 CultureInfo cul = CultureInfo.CurrentCulture;
 DateTimeFormatInfo dfinfo = DateTimeFormatInfo.CurrentInfo;
MessageBox.Show(cul.Calendar.GetWeekOfYear(DateTime.Now.Date, dfinfo.CalendarWeekRule, dfinfo.FirstDayOfWeek).ToString());
            

martedì 21 giugno 2022

Fine supporto e utilizzo di Internet Explorer

Come annunciato dal sito ufficiale Microsoft, qui https://blogs.windows.com/windowsexperience/2022/06/15/internet-explorer-11-has-retired-and-is-officially-out-of-support-what-you-need-to-know/ dal 15 giugno 2022 il browser Microsoft Internet Explorer non è più supportato, sostituito dal nuovo browser Edge

lunedì 20 giugno 2022

Verifica espressioni regolari regexr

Dal seguente sito https://regexr.com/ è possibile verificare la correttezza dell'espressioni regolari. Lo strumento è gratuito ed in lingua inglese con il quale fare delle prove.

domenica 19 giugno 2022

Ebook gratuito educare alla conoscenza informatica

 



Interessante l'ebook multi lingua realizzato da Cloudera per far conoscere ai giovani e non, l'importanza dei dati e delle informazioni.

Un fumetto in lingua italiana ed altre lingue, che spiega molto bene l'importanza di analizzare i dati.

Al seguente sito https://freshsqueezekids.com/ è possibile leggere o scaricare l'ebook in formato pdf, cliccando l'immagine della bandiera è possibile selezionare la lingua di proprio interesse.


sabato 18 giugno 2022

Tools online per verificare le espressioni regolari

Dal seguente sito https://www.regexpal.com/ è possibile verificare la correttezza delle espressioni regolari.
Il sito è in lingua inglese, dopo aver impostato l'espressione nella casella di testo, nella casella inferiore scrivere il valoro, se è corretto visualizza il messaggio Match altrimenti no match.

venerdì 17 giugno 2022

Download gioco Supraland

 



Disponibile gratuitamente e senza limitazioni il gioco di strategia Supraland, in lingua italiana e per sistemi operativi Windows.

Il gioco è adatto a tutta la famiglia e si potrà scaricare gratuitamente fino al 23 giugno 2022 dopo tale data, il download sarà a pagamento.

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

giovedì 16 giugno 2022

Download gratuito ebook Database Design

 



Un ebook gratuito in lingua inglese per la progettazione dei database, è quello offerto da SyncFusion,   scaricabile dal seguente sito https://www.syncfusion.com/succinctly-free-ebooks/database-design-succinctly .

L'ebook è gratuito ma occorre un account gratuito al sito.

Per maggiori informazioni e download visitate il sito indicato.


mercoledì 15 giugno 2022

Componente gratuito per la creazione di video giochi gestione grafica flexEngine

Flex-Engine Flex Engine (ajweeks.com) è un componente gratuito realizzato con il linguaggio di programmazione C++ per la creazione dei video giochi.
Per maggiori informazioni e download visitate il sito indicato.

martedì 14 giugno 2022

Framework gratuito per applicazioni desktop multipiattaforma

 



Il Framework gratuito Electron Electron | Build cross-platform desktop apps with JavaScript, HTML, and CSS. (electronjs.org) permette di realizzare applicazioni multi piattaforma utilizzando il linguaggio web per ambito desktop.

Per maggiori informazioni e d altro visitate il sito indicato.


lunedì 13 giugno 2022

C# .Net 6 il metodo Zip

Altra interessante novità di .Net 6, è il metodo "Zip" per gli oggetti di tipo List o array, crea una singola sequenza da due o più sequenze, in pratica li unisce.
Supponiamo di avere una lista di elementi che indicano dei prodotti, ed una che indica la tipologia del prodotto, è possibile unire in una sola sequenza le due liste.
Qui di seguito un esempio.

           string[] Generi = new string[] { "Biscotti", "Trapano", "Sapone" };
            string[] Categoria = new string[] { "Alimenti", "Ferramenta", "Igiene" };
            int[] Prezzo = new int[] { 10, 30, 5 };
            //Elemento unico delle due array (Generi e Categoria)
            var risultato = Generi.Zip(Categoria);
       //visualizza a video un messaggio con i due array abbinati
 foreach ((string generi, string categoria) in Generi.Zip(Categoria))
            {
                MessageBox.Show($"Generi: {generi} Categoria: {categoria}");
            }

//Visualizza a video un messaggio per ogni elemento, di tre sequenze.
    foreach ((string generi, string categoria, int prezzo) in Generi.Zip(Categoria, Prezzo))
            {
                MessageBox.Show($"Generi: {generi} Categoria: {categoria} Prezzo: {prezzo}");
            }

domenica 12 giugno 2022

Download gratuito ebook Excel 2019 All-in-One For Dummies

 


Fino al 22 giugno 2022 è possibile scaricare gratuitamente un ebook sul programma più famoso al mondo di foglio di calcolo, Microsoft Excel

L'ebook è in formato pdf ed in lingua inglese.

Per maggiori informazioni e download visitate il seguente sito https://sf.tradepub.com/free-offer/excel-2019-all-in-one-for-dummies-24.00-value-free-for-a-limited-time/w_wile376

sabato 11 giugno 2022

Gioco gratuito EVE Online

 



Un gioco gratuito da utilizzare su pc Windows quello proposto da EpicGame, che in questa nuova uscita fornisce a tutte le fasce di età un gioco spaziale.

Il gioco è in lingua inglese ed è gratuito.

Per maggiori informazioni e download visitate il seguente sito EVE Online | Scaricalo e gioca gratuitamente sull'Epic Games Store

giovedì 9 giugno 2022

Download gioco gratuito maneater

 




Fino al 16 giugno 2022 è possibile scaricare il gioco Maneater per un pubblico maggiorenne, di uno squalo che deve uccidere persone e pesci.

Un gioco di lotta, e seppur con una buona grafica è adatto per un pubblico adulto per le varie scene violente.

Il gioco è per sistemi operativi Windows.

Fino al 16 giugno 2022 si potrà scaricare gratuitamente, dopo tale data il download sarà a pagamento.

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

mercoledì 8 giugno 2022

C# Utilizzo del database DB2 in Net 6 : Parte 2 - Stesura del codice per operazioni CRUD


Riprendiamo l’articolo sull’utilizzo del database DB 2 tramite l’ultima versione di OleDB e con l’ambiente di sviluppo Visual Studio 2022 Community.
In questa seconda ed ultima parte, vedremo come scrivere il codice con il linguaggio di programmazione C# per le operazioni sulle tabelle, quali inserimento, lettura, aggiornamento e cancellazione dei dati.

Creazione di progetto

Si crea un progetto di tipo app Windows forms, selezionando come versione del Framework 6.
Dopo aver creato il progetto, aggiungere un controllo di tipo Datagrid, con il quale visualizzare i dati, il quale controllo avrà impostato la proprietà “Name” con il valore “DtgDati” tre pulsante, uno con la proprietà “Name” impostata su “BtnUpdate” e la proprietà “Text” su “Aggiorna”, un pulsante con la proprietà “Name” impostata su “BtnCancella” e la proprietà “Text” impostata su “Cancella”, ed infine l’ultimo pulsante, con la proprietà “Name” impostata su “BtnInsert” e la proprietà “Text” su “Inserisci”, il tutto dev’essere come in figura 1.


Figura 1 – la form con i vari controlli


Ora non resta che aggiungere le classi per la gestione dei dati per il database DB2, tramite Nuget, aggiungiamo l’ultima versione di “System.Data.OleDb” che nel momento in cui stiamo scrivendo è la 6.0.0.

Il tutto come in figura 2.

Figura 2 - L’aggiunta di OleDB

Dopo aver aggiunto la gestione dei dati tramite OleDB, non resta che scrivere il codice per la gestione del database.

Dopo aver creato la tabella “Anagrafica”, dobbiamo caricare i dati nel load della form, per far ciò, facciamo doppio click sulla form, in modo di passare nell’evento “Load” della nostra form.
In alto sopra ad ogni dichiarazione dobbiamo scrivere lo spazio dei nomi per utilizzare alcune classi, di seguito la dichiarazione del namespace oledb.


C#

using System.Configuration;

using System.Data;

using System.Data.OleDb;



Abbiamo aggiunto anche lo spazio dei nomi per la gestione dei dati e dei file di configurazione.
Premessa, nel progetto va aggiunto un file di configurazione (app.config) il quale contiene le informazioni del nostro server DB, qui di seguito un esempio di app.config, in particolar modo della stringa di connessione alla fonte dati.



informazioni del nostro server DB, qui di seguito un esempio di app.config.

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

      <connectionStrings>

            <add name="DB2" connectionString="Provider=DB2OLEDB; Persist Security Info = False; User ID = NomeUtente; Password = Password; Initial Catalog = Database; Data Source = Database; APPC Mode Name = IBMRDB; Network Transport Library = TCPIP; Network Address = NomeServer; Network Port = 5025; Package Collection = Nome; Default Schema = NomeSchema; DEFER PREPARE = true;"/>

           

      </connectionStrings>

</configuration>


Ritorniamo nell'evento load della form, e scriviamo il codice per il caricamento dei dati presenti nella base dati DB2 e da visualizzare nel controllo DatagridView.
Qui di seguito il frammento di codice delle suddette operazioni.




private void Form1_Load(object sender, EventArgs e)

        {

 

             

            using (var connOleDB2 = new OleDbConnection(ConfigurationManager.ConnectionStrings["DB2"].ConnectionString))

            {

                using (var cmdOleDB2 = new OleDbCommand())

                {

                    connOleDB2.Open();

                    cmdOleDB2.CommandType = CommandType.Text;

                    cmdOleDB2.CommandText = "SELECT Nome, Cognome FROM Schema.Anagrafica";

                    cmdOleDB2.Connection = connOleDB2;

                    try

                    {

 

 

                        var risultatoReader = cmdOleDB2.ExecuteReader();

                        DataTable dati = new DataTable();

                        dati.Load(risultatoReader);

                        DtgDati.DataSource = dati;

                    }

                    catch (Exception ex)

                    {

                        MessageBox.Show("Errore: " + ex.Message);

                    }

                }

            }

 

 

 

        }




Passiamo in visualizzazione grafica, e facciamo doppio click sul pulsante “Aggiorna” in modo da passare in visualizzazione codice per l’evento click del pulsante.
Nel pulsante scriviamo il codice per aggiornare i dati, qui di seguito il frammento di codice di tale dichiarazione.


C#

  private void BtnUpdate_Click(object sender, EventArgs e)

        {

            using (var connOleDB2 = new OleDbConnection(ConfigurationManager.ConnectionStrings["DB2"].ConnectionString))

            {

                using (var cmdOleDB2 = new OleDbCommand())

                {

                    connOleDB2.Open();

                    cmdOleDB2.CommandType = CommandType.Text;

                    cmdOleDB2.CommandText = "update Schema.Anagrafica set Cognome = 'test', Nome = 'test2' where ID = 5";

                    cmdOleDB2.Connection = connOleDB2;

                    try

                    {

 

 

                        var risultatoReader = cmdOleDB2.ExecuteNonQuery();

                        MessageBox.Show("Record aggiornati: " + risultatoReader);

 

                    }

                    catch (Exception ex)

                    {

                        MessageBox.Show("Errore: " + ex.Message);

                    }

                }

            }

           

 

 

        }

Ora non resta che ritornare il visualizzazione grafica e facciamo doppio click sul pulsante “Cancella”, in modo di passare all’evento click del pulsante per la cancellazione.

Sempre con le classi “OleDB” dopo aver effettuato la connessione alla fonte dati, eseguiamo il comando di eliminazione dei dati, questo avviene sempre con la classe OledbCommand.

C#

private void BtnCancella_Click(object sender, EventArgs e)

        {

            using (var connOleDB2 = new OleDbConnection(ConfigurationManager.ConnectionStrings["DB2"].ConnectionString))

            {

                using (var cmdOleDB2 = new OleDbCommand())

                {

                    connOleDB2.Open();

                    cmdOleDB2.CommandType = CommandType.Text;

                    cmdOleDB2.CommandText = "DELETE Schema.Anagrafica where ID = 5";

                    cmdOleDB2.Connection = connOleDB2;

                    try

                    {

 

 

                        var risultatoReader = cmdOleDB2.ExecuteNonQuery();

                        MessageBox.Show("Record Cancellati: " + risultatoReader);

 

                    }

                    catch (Exception ex)

                    {

                        MessageBox.Show("Errore: " + ex.Message);

                    }

                }

            }

        }


Siamo giunti all’ultimo frammento di codice, quello relativo all’inserimento dei dati, passiamo in visualizzazione grafica, e facciamo doppio click sul pulsante “Inserisci”, in modo da passare in visualizzazione codice nell’evento click del pulsante.

Di seguito il codice per l’inserimento di un record nella tabella Anagrafica.


private void BtnInsert_Click(object sender, EventArgs e)

        {

             using (var connOleDB2 = new OleDbConnection(ConfigurationManager.ConnectionStrings["DB2"].ConnectionString))

            {

                using (var cmdOleDB2 = new OleDbCommand())

                {

                    connOleDB2.Open();

                    cmdOleDB2.CommandType = CommandType.Text;

                    cmdOleDB2.CommandText = "INSERT INTO Schema.Anagrafica  (Nome, Cognome) VALUES(‘Emanuele’, ‘Mattei’)";

                    cmdOleDB2.Connection = connOleDB2;

                    try

                    {

 

 

                        var risultatoReader = cmdOleDB2.ExecuteNonQuery();

                        MessageBox.Show("Record Inseriti: " + risultatoReader);

 

                    }

                    catch (Exception ex)

                    {

                        MessageBox.Show("Errore: " + ex.Message);

                    }

                }

            }

        }






Ora non resta che provare ad avviare il nostro applicativo e se la connessione alla base dati, ed il codice è corretto verranno eseguite le varie operazioni.

Conclusioni

Per chi ha già utilizzato le classi Oledb per gestire altri database non troverà difficoltà nello sviluppare applicazioni che fanno uso del database DB2, visto che le classi ed il loro utilizzo è uguale ad altri tipi di database.
E’ importante aver installato il provvider per la gestione del database DB2, che di solito avviene quando si installa Visual Studio 2022 o altre versioni.
Inoltre i dati di connessione sono fondamentali, occorre sapere nome database, server e tante altre informazioni da inserire nella stringa di connessione, che possono essere forniti dal DBA aziendale.

L'articolo ha voluto fornire al lettore una panoramica sull'utilizzo del database DB2 con le operazioni più comuni, utilizzando le classi messe a disposizione dello spazio dei nomi OLEDB. Le classi per la gestione dei dati, sono oleDBConnection, che permette la gestione della connession al database, che tramite il metodo "Open" è possibile avviare operazioni sul database stesso. Mentre la classe OledbCommand, permette di esguire le operazioni sulel tabelle, operazioni CRUD, impostando le varie proprietà, quale il tpo di query (testo per la proprietà Text) l'istruzione SQL da inserire nella proprietà CommandText,. ed impostare il riferimento al database tramite la proprietà Connection.

martedì 7 giugno 2022

Portale .net MAUI per la programmazione multi piattaforma

 



Ancora non è uscita in versione definitiva ma sono presenti diversi siti di formazione.

Il sito ufficiale di Microsoft, su cui tenersi aggiornarsi o avvicinarsi a questa tecnologia per la programmazione .Net multi piattaforma, è il seguente sito .NET Multi-platform App UI (.NET MAUI) | .NET (microsoft.com) 

lunedì 6 giugno 2022

Gruppo di Discussione Raspberry

Dal seguente sito https://raspberrypi.stackexchange.com/ è possibile consultare i vari quesiti sulla micro scheda Raspberry.
Il sito è in lingua inglese.

C# SendKeys press button Windows

In C# per simulare il tasto di Windows tramite SendKeys, occorre passare un parametro particolare.
Il frammento di codice qui di seguito, illustra una tecnica di come simulare il tasto Windows.

 SendKeys.Send("^({ESC}E)");

domenica 5 giugno 2022

Sito formativo .Net

 


Il punto ufficiale per apprendere la tecnologia .Net o seguire gli aggiornamenti è il sito ufficiale di Microsoft.

Per lo sviluppo .Net, esiste un apposito portale, visibile a questo indirizzo .NET | Free. Cross-platform. Open Source. (microsoft.com)  con tutte le novità e soprattutto iniziare a programmare con questa tecnologia.


sabato 4 giugno 2022

Avviare la digitazione vocale su Windows

 



E' possibile avviare la digitazione vocale su Windows e quindi in vari programmi (notepad, programmi proprietari, Word, etc) inserire il testo dettato dalla voce.

Questa funzionalità permette di inserire il testo nei vari programmi tramite ciò che si dice a voce nel microfono.

Per attivare questa funzionalità digitare il simbolo di Windows + H, il tutto contemporanamente.

A questo punto verrà visualizzato il microfono in cui parlando verrà inserito il testo nel programma aperto.

 Possiamo fare click sul microfono per avviare l'ascolto, invece per chiudere non parlare per qualche secondo oppure pronunciare "Interrompi ascolto".


venerdì 3 giugno 2022

Download gioco Wolfenstein: The New Order

 




Disponibile gratuitamente fino al 9 giugno 2022 il gioco sparatutto in lingua italiana Wolfenstein per sistemi operativi Windows.

Il gioco non ha limitazioni ed è possibile scaricarlo gratuitamente fino al 9 giugno 2022 dopo tale data il download sarà a pagamento.

Per maggiori informazioni e download visitate il seguente sito Wolfenstein: The New Order (epicgames.com)

giovedì 2 giugno 2022

Sql Server ritornare il numero dei record modificati

Durante lo sviluppo di Stored Procedure, può tornare utile sapere quanti record sono stati modificati Tramite la parola chiave "select @@ROWCOUNT" possiamo ottenere il numero dei record aggiornati.

Il comando torna utile qualora si utilizza una Stored Procedure. Qui di seguito un esempio di tale utilizzo

Update Tabella
Set Campo = 121
where CampoCitta= "Roma"

select @@ROWCOUNT

mercoledì 1 giugno 2022

Componente gratuito creazione di video giochi defold

 


Nella creazione dei video giochi, sono sempre più disponibili componenti per la loro realizzazione.

Defold, è un ottimo componente gratuito che facilita lo sviluppo dei video giochi.

Per maggiori informazioni e download visitate il seguente sito Defold - Official Homepage - Cross platform game engine