sabato 31 luglio 2021

Download gioco Mothergunship

 



Un gioco graficamente molto bello ed in lingua italiana sul genere sparatutto, parliamo di Mothergunship, che fino al 8 agosto 2021 si potrà scaricare gratuitamente e senza limitazioni, dopo tale data il download sarà a pagamento.

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

venerdì 30 luglio 2021

Componente gratuito per grafici per siti web

Un componente gratuito da utilizzare nelle proprie applicazioni web per la creazione dei grafici per presentare i dati.

Dal seguente sito https://d3js.org/ è possibile scaricare, consultare i vari esempi o documentazione di questo componente per realizzare dei grafici.


giovedì 29 luglio 2021

Visual Studio Asp.Net debug Javascipt

Nel caso che si vuole effettuare il debug di codice Javascript, utilizzando Visual Studio 2019 Community su progetti web, inseriamo prima del codice che vogliamo esaminare la parola chiave debugger seguita dal punto e virgola.
Qui di seguito un frammento di codice:

Function NomeFunzione(){

debugger;
alert('prova');
 

}

mercoledì 28 luglio 2021

Programma per comprimere e decomprimere i file compressi di vari formati

Il programma 7-zip https://www.7-zip.org/ , permette gratuitamente di comprimere e decomprimere i file compressi, tra i quali anche quelli di tipo rar.
Il programma è gratuito ed è possibile anche visionare il codice sorgente.
Per maggiori informazioni e download visitate il seguente sito https://www.7-zip.org/


lunedì 26 luglio 2021

Jquery rilevare estensione file da tag input file

Il frammento di codice qui di seguito, illustra una tecnica di come rilevare se il file del tag input file corrisponde alle proprie esigenze oppure no.

Se per esempio dobbiamo verificare che il file è di tipo jpg o gif, con il frammento di codice qui di seguito viene verificato tale formato in tal caso visualizza un messaggio.

function Anteprima(Input) {

 var file = Input.files[0];


        if (file) {

 var Estensione = ['jpg', 'gif'];

            if ($.isArray(file.name.split('.').pop().toLowerCase(), Estensione)== -1) {

                Alert('File non valido.');

                return;

            }

     }


 }

domenica 25 luglio 2021

C# Windows form passare i valori da una form ad un altra

 Nel caso che si vogliono passare i dati da una form ad un altra, in ambito Windows Forms, si può usare intervenire sul costruttore della seconda form.


Supponiamo di avere due form, form1 e form2, nella form2 inoltre si trova un controllo listbox.


Apriamo la form2 e nella parte codice implementiamo il costruttore anzi ne facciamo un' altro nuovo.

Qui di seguito il codice della seconda form.

 public partial class Form2 : Form

    {

        public Form2()

        {

            InitializeComponent();

        }

        public Form2(string[] Dati)

        {

            InitializeComponent();

            listBox1.Items.AddRange(Dati);


        }


        private void Form2_Load(object sender, EventArgs e)

        {


        }

    }


Come si vede dal frammento precedente, abbiamo due costruttori, il secondo, accetta un parametro riguardante un array di string. Questo valore viene aggiunto al controllo listbox.


Supponiamo che dalla form1 abbiamo un pulsante al quale vogliamo passare i dati, richiamando la form2.

Qui di seguito il frammento di codice delle suddette operazioni.


 public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }


        private void button1_Click(object sender, EventArgs e)

        {

            string[] Dati = new string[] { "Primo", "Secondo", "Terzo" };


            Form2 form2 = new Form2(Dati);

            form2.Show();

        }

    }

Come si vede dal precedente codice, viene passata alla form2 l'array di tipo string.




sabato 24 luglio 2021

Download gioco Verdun

 



Un gioco per un pubblico adulto con una bellissima grafica e storia di gioco.

Fino al 29 luglio 2021 è possibile scaricare senza limitazioni e durata di tempo il gioco Verdun per sistemi operativi Windows.

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

venerdì 23 luglio 2021

Download gioco gratuito Defense Grid: The Awakening

 




Disponibile gratuitamente e senza nessun limite il gioco di azione Defense grid the Awakening, in lingua italiana e per sistemi operativi Windows.

Il gioco si potrà scaricare gratuitamente fino al 29/07/2021 dopo tale data, il download sarà a pagamento.

Per maggiori informazioni e download visitate il seguente sito Defense Grid: The Awakening | Acquistalo e scaricalo subito sull'Epic Games Store 

giovedì 22 luglio 2021

Jquery impostare il tipo di file (estensione) al controllo inputfile

Nella tecnologia Asp.Net MVC, se vogliamo impostare il tag input Type="file" con la selezione di determinati file, dobbiamo impostare la proprietà accept con il tipo di file che vogliamo.

Qui di seguito un frammento di codice.


input type="file" accept=".jpg, .gif" name="NomeControllo" id="NomeControllo>


lunedì 19 luglio 2021

C# Linq Aggiungere un nuovo elemento ad una lista di tipi anonimi

Il frammento di codice qui di seguito, illustra una tecnica di come aggiungere un nuovo elemento ad una lista di tipi generici.


Var Risultato = (from Dati in Elementi where Dati.Campo == Valore 

                            select new 

                            {

                                   EtichettaA = Dati.Campo1,

                                   EtichettaB = Dati.Campo2,

                            }).ToList();

var Elemento = new {EtichettaA="Valore", EtichettaB="Valore2",};

Risultato.Insert(0, Elemento);



domenica 18 luglio 2021

Asp.Net MVC validare il tag input type file

Nel caso che si deve rendere un campo obbligatorio di tipo input type="file", il "ValidationMessage" di HNTL non funziona, per risolvere questo problema occorre inserire sempre nel tag input type file gli attributi "data-val="true" e data-val-required="Testo che si vuole visualizzare".

Qui di seguito un esempio di codice


input type="File" name"CaricaFile" id="CaricaFile" data-val="true" data-val-required="campo obbligatorio">


sabato 17 luglio 2021

Download gioco gratuito Offworld Trading Company

 



Un nuovo gioco di strategia offerto da EpicGames, per sistemi operativi Windows con una bella grafica e soprattutto giocabilità.

Il gioco non è in lingua italiana e si potrà scaricare gratuitamente fino al 22 luglio 2021.

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

venerdì 16 luglio 2021

Download gioco Obduction

 



Disponibile gratuitamente e senza limitazioni il gioco di avventura Obduction, per sistemi operativi Windows.

Il gioco in lingua italiana, si potrà scaricare gratuitamente fino al 22 luglio 2021.

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

giovedì 15 luglio 2021

Rilasciata la versione .NET 6 Preview 6

Rilasciata in questi giorni la preview 6 del nuovo Framework .Net 6 come annunciato dal seguente post https://devblogs.microsoft.com/dotnet/announcing-net-6-preview-6/ 

Essendo una versione anteprima si consiglia di installarlo su pc di prova o test.


Download Visual Studio 2022 Preview 2

Come riportato dal seguente post https://devblogs.microsoft.com/visualstudio/visual-studio-2022-preview-2-is-out/ rilasciata in questi giorni la versione preview 2 dell'ambiente di sviluppo Visual Studio 2022.

Mentre qui https://visualstudio.microsoft.com/it/vs/preview/vs2022/ il download .

Essendo ancora una versione anteprima si consiglia di installarlo su pc da test e di prova.

Sito per imparare la programmazione per bambini coding

Un sito molto valido per i bambini che vogliono imparare la programmazione partendo dalle immagini.

Il seguente sito https://www.codemonkey.com/ dopo previa registrazione o accedendo con apposito account, fornisce interessanti guide e strumenti per avvicinare i bambini e ragazzi alla programmazione.

Il sito è in lingua inglese.


lunedì 12 luglio 2021

C# Utilizzo di Stored Procedure con Entity Framework Core in Asp.Net Core

 Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/microsoft-net-framework/art_utilizzo-di-stored-procedure-con-entity-framework-core-in-aspnet-core_1747.aspx


In questo articolo vedremo come utilizzare le stored procedure realizzate in Microsoft Sql Server, in Asp.Net MVC core tramite il linguaggio di programmazione C# e versione del Framework 5.0.

Come ambiente di sviluppo utilizzeremo  Visual Studio 2019 Community, un ambiente gratuito per lo sviluppo di vari progetti.

L’articolo vuole fornire le basi per la creazione di applicazioni web con l’ultima versione del Framework utilizzando Entity Framework Core.

Vedremo come accedere alla fonte dati, partendo dalla creazione di una classe.

La schermata per visualizzare i dati sarà simile alla figura 1.



Figura 1 – Pagina per la visualizzazione dei dati.


Creazione della Stored Procedure

Utilizzeremo la tabella Anagrafica, già utilizzata in vari articolo, che è composta da 4 colonne, IdAnagrafica, che è un campo chiave, nome, cognome e Ruolo che sono campi di tipo Varchar 50.

La stored Procedure che si crea, permette di selezionare i record che corrispondo al parametro passato.

Qui di seguito la SP per la ricerca dei dati nella tabella Anagrafica

CREATE PROCEDURE [dbo].[Trova]

        

       @Nome VARCHAR(50)

AS

BEGIN

 

       SET NOCOUNT ON;

    IF(@Nome IS NULL OR @Nome = '')

             SELECT * from

                    Anagrafica

       ELSE

             SELECT * from

             Anagrafica

             where Nome like '%' + @Nome + '%'

END


Terminata la creazione della SP e verificato il corretto funzionamento dobbiamo creare il progetto.


Creazione del progetto

Si crea un nuovo progetto di tipo Asp.Net Core MVC con versione del Framework 5.0.

Dopo aver aperto visual Studio 2019 Community, selezionare il modello “app web Asp.Net Core (Model-View-Controller) , il tutto come mostrato in figura 2



Figura  2 – Il modello da selezionare.


Facciamo click sul pulsante “Avanti” ed impostiamo un nome, di nuovo click sul pulsante “Avanti” e selezioniamo la versione 5.0, a questo punto click sul pulsante “Fine”.

Una volta creato il progetto, occorre aggiungere i riferimenti a Nuget, in particolare ad Entity Framework e precisamente a “Microsoft.EntityFrameworkCore.SqlServer”, il tutto come mostrato in figura 3.


Figura 3 – Il rifermento a Entity Framework Sql Server


Ora non resta che scrivere il codice per la gestione dei dati, creando classi appositamente per la gestione dell’entità e dei dati.

Stesura del codice

Si crea un nuova classe denominata “Anagrafica” che avrà la funzionalità di gestire i dati della tabella “Anagrafica” creata in precedenza.

La classe avrà le proprietà con lo stesso nome delle colonne della tabella e dello stesso tipo.

Qui di seguito la dichiarazione di tale classe.


public class Anagrafica

    {

 

     public   Int32 IDAnagrafica { get; set; }

        public  string Nome { get; set; }

 

        public string Cognome { get; set; }

 

        public string Ruolo { get; set; }

 

    }


Terminata la creazione della classe per la gestione dei dati, dobbiamo creare il contesto, ossia una classe che permette di gestire l’entità appena creata con la base dati, e quindi il mapping e la creazione del metodo per la ricerca dei dati, invocando la Stored Procedure appena creata.

La Stored Procedure sarà invocata utilizzando il metodo “FromSqlRaw” che è l’estensione dello spazio dei nomi di EntityFrameworkCore inserito precedentemente.

Si crea una nuova classe denominata “DBCtx” che dovrà gestire i dati.

La classe sarà come riportato qui di seguito.


C#

using System.Linq;

using Microsoft.EntityFrameworkCore;

 

namespace WebArtEFCore

{

    public class DBCtx : DbContext

    {

 

       

        public DBCtx(DbContextOptions<DBCtx> options)

           : base(options)

        {

        }

        protected override void OnModelCreating(ModelBuilder modelBuilder)

        {

            modelBuilder.Entity<Anagrafica>(entita =>

            {

                entita.HasKey(p => p.IDAnagrafica);

 

            });

            }

 

        public DbSet<Anagrafica> Anagrafiche { get; set; }

 

        public IQueryable<Anagrafica> Ricerca(string Nome)

        {

            

            return this.Anagrafiche.FromSqlRaw("EXECUTE Trova {0}", Nome);

        }

    }

 

 

}



Come si è visto nel frammento di codice precedente, si è creata una classe che avrà il compito di fare da “ponte” tra l’applicativo ed il database, con questa classe che gestisce la fonte dati. A differenza di quando si usa l’autocomposizione di Entity Framework che crea in automatico la classe per il mapping, ossia la classe del contesto (DBcontext) in questo scenario siamo noi a creare la gestione della fonte dati.

Il metodo FromSqlRaw permette di eseguire stored procedure ed istruzioni SQL , nel nostro caso, esegue la nostra stored Procedure passando un valore.


La classe DbSet fornisce alla classe che abbiamo creato in precedenza i metodi per la gestione dell’entità nei confronti della base dati, che avviene tramite lo spazio dei nomi “Microsoft.EntityFrameworkCore”.


Ora che abbiamo terminato la parte di stesura codice per la gestione delle query e dell’estrapolazione dei dati, dobbiamo impostare la connessione al database, la connectionstring.

Facciamo click sul file denominato “appsettings.json” ed impostiamo il tag “ConnectionString”, qui di seguito si riporta il codice completo di questo file con la connessione alla base.


{

  "Logging": {

    "LogLevel": {

      "Default": "Information",

      "Microsoft": "Warning",

      "Microsoft.Hosting.Lifetime": "Information"

    }

  },

  "ConnectionStrings": {

    "MyConn": "Data Source=NomeServer\\SQLEXPRESS;Initial Catalog=Dati;Integrated security=true"

  },

  "AllowedHosts": "*"

}

Ora impostiamo il riferimento della connectionstrings alla nostra classe, andiamo nel file “Startup.cs” e nell’evento “ConfigureServices” aggiungiamo l’istruzione per impostare tale connessione alla nostra classe.

Qui di seguito il frammento di codice delle suddette dichiarazioni.


C#

public void ConfigureServices(IServiceCollection services)

        {

            services.AddControllersWithViews();

            services.AddMvc();

            string conStr = this.Configuration.GetConnectionString("MyConn");

            services.AddDbContext<DBCtx>(options => options.UseSqlServer(conStr));

        }


Ora dobbiamo gestire questi dati sia nella parte della pagina e sia nel controller.

Andiamo nel controller, nel file denominato “HomeController.cs” e dichiariamo un oggetto per questo controller che fa riferimento alla classe Context.

Qui di seguito le dichiarazione di quanto anticipato.


C#

DBCtx contesto;


Nel costruttore inizializziamo il nostro oggetto impostando il riferimento alla connectionStrings, qui di seguito tale dichiarazione.

C#

public HomeController(DBCtx _context)

        {

              contesto = _context;

        }


Ora non resta che creare negli eventi Index, il caricamento dei dati, in uno il caricamento di tutti dati quando si apre la pagina, mentre un altro evento index di tipo “Post” quando si vuole effettuare una ricerca per nome.

Qui di seguito i frammenti di codice delle suddette dichiarazioni.


C#

public IActionResult Index()

        {

         

        List<Anagrafica> Anagrafiche = contesto.Ricerca("").ToList();

            return View(Anagrafiche);

        }

 

        [HttpPost]

        public IActionResult Index(string Nome)

        {

 

            List<Anagrafica> Anagrafiche = contesto.Ricerca(Nome).ToList();

            return View(Anagrafiche);

        }

Ora passiamo nella parte view, in particolare nel file “Index.cshtml”, e scriviamo il codice per visualizzare a video una tabella con i dati ed i campi per la ricerca.

Qui di seguito si riporta il codice completo della pagina index con il quale vengono visualizzati i dati della base dati in forma tabellare.


Index.cshtml

 

@{

    ViewData["Title"] = "Home Page";

}

 

@model List<Anagrafica>;

 

 

<div class="text-center">

    <h1 class="display-4">Esempio di utilizzo SP</h1>

    <form method="post" asp-controller="Home" asp-action="Index">

        <span>Filtra per nome:</span><input type="text" name="Nome" />

        <input type="submit" value="Cerca" />

        <br />

        <br />

        <table cellpadding="0" cellspacing="0">

            <tr>

                <th>Id</th>

                <th>Nome</th>

                <th>Cognome</th>

                <th>Ruolo</th>

            </tr>

            @foreach (Anagrafica elemento in Model)

            {

                <tr>

                    <td>@elemento.IDAnagrafica</td>

                    <td>@elemento.Nome</td>

                    <td>@elemento.Cognome</td>

                    <td>@elemento.Ruolo</td>

                </tr>

            }

        </table>

    </form>

</div>


Il codice è facilmente comprensibile, dopo aver creato un oggetto di tipo list “Anagrafica” effettua un ciclo di tutti record creando una tabella. Tramite il metodo post di “Index” passando come valore il testo presente nella casella di testo, effettua la ricerca dei dati invocando la storedprocedure.


Conclusioni

L’articolo ha voluto fornire al lettore le basi per creare applicazioni web multipiattaforma con Asp.Net CORE MVC e l’uso di Entity Framework Core, senza utilizzo dell’autocomposizione ma creando tutto da codice la mappatura dei dati tra l’applicazione ed il database.

Un articolo che fornisce le basi per iniziare a scrivere applicazioni in questo ambito, che sarà sempre più utilizzato.

domenica 11 luglio 2021

Download gioco Ironcast

 



Disponibile gratuitamente per il download e l'installazione il gioco sparatutto Ironcast.

Il gioco in lingua italiana e per sistemi operativi Windows non ha limitazioni ed è possibile scaricarlo gratuitamente fino al 15 luglio 2021.

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

sabato 10 luglio 2021

Jquery rilevare il nome dell'elemento che ha il punto

Nel caso che vogliamo rilevare un elemento che ha il nome con un punto, per esempio nome.altronome in Jquery, dobbiamo utilizzare i doppi slash ossia \\.


Qui di seguito un frammento di codice.

$("#NomeElemento\\.NomeElemento").val();


venerdì 9 luglio 2021

Select2 rilevare il testo della ricerca

Nel caso che si vuole rilevare il testo che abbiamo digitato nella caselle di filtro degli elementi di una dropdownl con il componente select2 https://select2.org/, dobbiamo utilizzare il metodo Val di Search.

Qui di seguito un frammento di codice


var Testo = $('#NomeControllo').data("select2").dropdown.$search.val();

giovedì 8 luglio 2021

Download gioco gratuito Bridge Constructor: The Walking Dead

 



Disponibile gratuitamente il gioco di azione e strategia riguardante i ponti.

Fino al 15 luglio 2021 è possibile scaricarlo gratuitamente senza limitazioni per sistemi operativi Windows, dopo tale data non sarà più possibile scaricarlo gratuitamente.

Il gioco è in lingua italiana.


Per maggiori informazioni e download visitate il seguente sito Bridge Constructor The Walking Dead | Acquistalo e scaricalo subito sull'Epic Games Store 

mercoledì 7 luglio 2021

Asp.Net MVC add button to select2 dropdown list

Il frammento di codice qui di seguito, illustra una tecnica di come aggiungere un pulsante in un controllo dropdownlist utilizzando il componente gratuito select2 https://select2.org/ nel caso che non sono presenti elementi.

Al click del pulsante verrà aggiungo l'elemento alla casella combinata

$(document).ready(function(){


    $('NomeControllo').select2({

       language: {


                            noResults: function(){

                                                                       return  '<button id="NomeButton" name="NomeButton"    style="width:100%" type="button" class="btn btn-primary"   onClick='NomeFunzione()' >TestoPulsante </button> ';


                                            }


                        },

escapeMarkup: function(markup){

    return markup;

}



            });


});



//Funzione


function NomeFunzione(){

var ValoreRilevato = $('#NomeControllo').data("select2").dropdown.$search.val();

$('#NomeControllo').append(new Option(ValoreRilevato, ValoreRilevato, false, true));

$('#NomeButton').hide();

 $('#NomeControllo').select2({ 

    minimunResultsForSearch: Infinity

});

 $('#NomeControllo').select2({ 

    minimunResultsForSearch: 1

});

}


martedì 6 luglio 2021

Select 2 impostare il testo nel caso che non sono presenti i valori nella ricerca

Per coloro che utilizzando il componente Select2 https://select2.org/ per estendere le caselle combinata, nel caso che vogliono personalizzare il messaggio in caso di valori vuoti durante la ricerca degli elementi, devono impostare la proprietà "NoResult". Qui di seguito un frammento di codice.


$(document).ready(function(){

    $('.select2').select({

        language: {

                            noResults: function(){

                                                                        return "Elemento non trovato";

                                            }

                        }


            });

});

lunedì 5 luglio 2021

Asp.Net MVC adminlte rilevare il tipo di ordinamento nel controllo DataTable

Nel caso che si vuole rilevare l'ordinamento della colonna di un controllo DataTable del Framework AdminLTE tramite il parametro order di GetValues possiamo rilevare se è di tipo "Asc" o "Desc".

Qui di seguito un esempio di codice.


Var DirezioneOrdinamento = Request.Form.GetValues("order[0][dir]").FirstOrDefault();


domenica 4 luglio 2021

AdminLTE abilitare la paginazione nel DataTable

 Nel caso che si vuole abilitare la paginazione nel DataTable tramite il framework AdminLTE occorre impostare il parametro "paging a true


Qui di seguito un frammento di codice.


$('#NomeTabella').DataTable({

destory: true,

"paging": true,

"serverside": true,

"filter": false,

.......

}

venerdì 2 luglio 2021

Download gratuito The Spectrum Retreat

 


Disponibile gratuitamente e senza limitazioni scaricabile fino al 7 luglio 2021 il gioco di strategia The Sprectrum Retreat per sistemi operativi Windows.

Il gioco è in lingua italiana, per il download e maggiori informazioni visitate il seguente sito https://www.epicgames.com/store/it/p/the-spectrum-retreat 

giovedì 1 luglio 2021

Convertire codice Json in codice Javascript

 Il seguente sito http://www.jsonutils.com/ permette di convertire il codice scritto in Json in codice Javascript.

Il sito è in lingua inglese ma facilmente utilizzabile, non richiede ne email o registrazione.