Primo video: Visual Studio 2012 - Cosa c'è di nuovo negli editor HTML, CSS e JavaScript?

by Andrea Dottor 18 September 2012 00:01

Come annunciato all’ultimo meeting, ecco il primo di una (speriamo lunga) serie di video riguardanti Visual Studio 2012 ed ASP.NET 4.5.
Ho deciso di provare una nuova forma di comunicazione che fosse parallela al blog, dei video/screencast di breve durata (dai 5 ai 15 minuti) dove spiego in modo molto pratico vari argomenti riguardanti ASP.NET e tutto ciò che lo circonda.

I video sono molto informali…e per me si tratta di un primo esperimento, e spero siate voi a dirme se la cosa può interessare oppure se preferivate i post sul blog. Attendo quindi i vostri feedback!

In questo primo video, mi scuso già in partenza, ma mi sono reso conto tardi delle molte ripetizioni…ed onestamente non l’ho volutamente ri-registrato per non stancarmi già da subito di questa nuova “forma”. Vedrete che nei prossimi video il risultato è nettamente migliore, ma da qualche parte bisogna pur cominciare.

In questo video parlo delle novità presenti negli editor di Visual Studio 2012 per lo sviluppo web, e quindi l’editor HTML, CSS e JavaScript. Vi farò vedere quelle che ritengo essere le novità più importanti, così da iniziare a prendere subito confidenza con quello che sarà il nostro strumento di sviluppo per tutti i prossimi video.

Trovate il video su youtube a questo link: Visual Studio 2012 - Cosa c'è di nuovo negli editor HTML, CSS e JavaScript?

In questo post Codice e slide della sessione What's New in ASP.NET 4.5 and Visual Studio 2012trovate codice e slide sull’argomento nel caso voleste approfondire il tutto.

Tags: ,

ASP .NET | .NET | Microsoft

Codice e slide della sessione What's New in ASP.NET 4.5 and Visual Studio 2012

by Andrea Dottor 17 September 2012 23:59

Venerdì 14 Settembre 2012 ho tenuto la sessione What's New in ASP.NET 4.5 and Visual Studio 2012 ed ecco qui il codice di esempio e le slide pronte al download:

Abstract: Il Microsoft .NET Framework è in continua evoluzione, e con la prossima versione verranno rilasciate interessanti funzionalità riguardanti ASP.NET.All'interno di questa sessione conosceremo tutte queste novità, ed andremo invece più in dettaglio in alcune di esse, permettendo a chi conosce già ASP.NET di poter essere più produttivo (Strongly Typed Data Controls, Model Binding, Asynchronous, WebSocket, ... ), mentre, per chi invece non ha molta esperienza con questa tecnologia, potrà vedere come i nuovi template di progetto e Visual Studio 2012 potranno aiutarlo ad approcciare correttamente queste tipologie di applicazioni.

Tags: , ,

ASP .NET | .NET | XeDotNet

Il meeting si avvicina - What's New in ASP.NET 4.5 and Visual Studio 2012

by Andrea Dottor 05 September 2012 23:25

La prossima settimana, venerdì 14 Settembre 2012 si terrà il prossimo Community Meeting di XeDotNet dal titolo ASP.NET 4.5, SQL Server 2012 e Visual Studio 2012.

In questo evento terrò una sessione dal titolo What's New in ASP.NET 4.5 and Visual Studio 2012, dove parlerò delle novità di Visual Studio 2012 riguardanti lo sviluppo web, e continuerò entrando in dettaglio in quelle che sono le novità introdotte in ASP.NET 4.5.

Il Microsoft .NET Framework è in continua evoluzione, e con la prossima versione verranno rilasciate interessanti funzionalità riguardanti ASP.NET.All'interno di questa sessione conosceremo tutte queste novità, ed andremo invece più in dettaglio in alcune di esse, permettendo a chi conosce già ASP.NET di poter essere più produttivo (Strongly Typed Data Controls, Model Binding, Asynchronous, WebSocket, ... ), mentre, per chi invece non ha molta esperienza con questa tecnologia, potrà vedere come i nuovi template di progetto e Visual Studio 2012 potranno aiutarlo ad approcciare correttamente queste tipologie di applicazioni.

Per chi volesse partecipare, trova l’agenda ed il link per la registrazione al seguente link:
http://www.xedotnet.org/Home/Meeting/20120914

Vi aspetto numerosi Winking smile

Tags: , , ,

ASP .NET | XeDotNet

Inviare email tramite un SMTP con certificato self-signed

by Andrea Dottor 05 September 2012 23:14

Può capitare (in fase di sviluppo) di dover inviare delle mail ad un server SMTP che ha un certificato self-signed.
Se provate ad inviare una mail da codice vi ritroverete con una bella eccezzione a causa del fallimento della validazione del certificato.

Un possibile work-around è quello di forzare il check della validità dei certificati in modo da far ritornare sempre true.
Il codice necessario è il seguente:

ServicePointManager.ServerCertificateValidationCallback =
                                (sender, certificate, chain, sslPolicyErrors) => true;

NOTE: il codice in questione è valido ogni qualvolta vi troviate a dover bypassare degli errori dovuti ai certificati.
Per ovvi motivi di sicurezza, siate ben consci di utilizzare questo codice solamente durante le fasi di sviluppo, altrimenti tanto varrebbe evitare l’uso del certificato.

Ed ecco il codice completo da utilizzare, compreso di invio della mail

ServicePointManager.ServerCertificateValidationCallback =
                                (sender, certificate, chain, sslPolicyErrors) => true;

MailMessage mail = new MailMessage();
mail.To.Add(new MailAddress("mail del destinatario"));
mail.Subject = "Oggetto";
mail.Body = "Corpo della mail";
mail.From = new MailAddress("mail del mittente");

SmtpClient smtp = new SmtpClient("smtp.miaazienda.it");
smtp.Credentials = new NetworkCredential("user", "password", "dominio");
smtp.EnableSsl = true;

smtp.Send(mail);

Tags: ,

ASP .NET | .NET

Json.Net - Deserializzare JSON con un AnonymousType

by Andrea Dottor 17 July 2012 22:42

Solitamente ci si trova a deserializzare JSON basandosi su classi precedentemente create. Spesso queste classi hanno quest'unico scopo, quello di mappare i dati che arrivano in formato JSON. Ed ecco che oggetto dopo oggetto, ci troviamo con molte di queste classi, che vengono utilizzate in un'unico punto.

Esporando la classe Newtonsoft.Json.JsonConvert della libreria Json.Net ho notato un metodo DeserializeAnonymousType, ed ho subito indagato sul come funzionasse, e se potesse fare al caso mio.
Questo metodo si occupa di deserializzare una stringa JSON utilizzando un AnonymousType come tipo...ed ecco che mi si è accesa la lampadina.
Open-mouthed smile

Ecco come poterlo utilizzare:

var dummy = new
{
  Description = "",
  Code = "",
  Data = "",
  CategoryID = -1,
};

var product = Newtonsoft.Json.JsonConvert.DeserializeAnonymousType(objToSave, dummy);

product sarà del tipo specificato nell'oggetto dummy creato come AnonymousType, ed avrà quindi le proprietà Description, Code, Data e Category esattamente come specificato nella dichiarazione.
Questo permette quindi di evitare la scrittura di classi utili alla sola deserializzazione degli oggetti JSON.

Tags: ,

.NET | ASP .NET

Chiamare un page-method da jQuery

by Andrea Dottor 17 July 2012 22:20

Con ASP.NET AJAX sappiamo bene come interrogare un page-method, ed in rete troviamo parecchia documentazione. Il tutto si basa sul controllo ScriptManager, dove abilitando il flag EnablePageMethods viene automaticamente creato un proxy javascript che ci permette di chiamare il page-method in modo molto semplice e veloce.

A questa pagina troviamo un esempio di come chiamare un page-method utilizzando ASP.NET AJAX: Exposing Web Services to Client Script

E' possibile però evitare l'utilizzo/dipendenza da ASP.NET AJAX, ed evitare quindi di avere nella pagina un controllo ScriptManager. Per fare questo ci viene in aiuto jQuery.

Come utilizzare jQuery per chiamare il page-method?

La cosa è molto semplice e si basa sull'uso del metodo Ajax di jQuery, e sul come comporre l'url da invocare.

Ecco qui un esempio di codice per invocare il page-method Save presente all'interno della pagina Product.aspx. Il metodo Save ha un parametro objToSave di tipo string (che riceverà un prodotto in formato JSON).

var product = new Object();
product.Description = "Descrizione";
product.Code = "ABC123";
product.Data = "20120712";
product.CategoryID = 12;

var dataToSave = new Object();
dataToSave.objToSave = JSON.stringify(product);

$.ajax({
  type: "POST",
  url: "Product.aspx/Save",
  data: JSON.stringify(dataToSave),
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function (msg) {
    alert('Risultato del salvataggio: ' + msg.d);
  },
  error: function (err) {
    alert('Errore: ' + err.statusText);
  }
});

Come potete bene vedere l'url da chiamare da jQuery è composto dal nome della pagina seguito dal nome del page-method ("Product.aspx/Save").
Questo metodo permette di avere anche oggetti in ritorno da metodo, che verranno gestiti dal codice inserito all'interno del metodo success.

Utilizzando questo codice non si hanno dipendenze dalle librerie ASP.NET AJAX, e aggiungo che il codice JavaScript necessario è inferiore a quello del proxy che verrebbe generato dal controllo ScriptManager.

E quindi, per l'ennesima volta, jQuery batte ASP.NET AJAX Winking smile

Tags: ,

ASP .NET | ASP.NET AJAX | jQuery

Codice e slide della sessione ASP.NET e lo sviluppo Client Side

by Andrea Dottor 20 March 2012 14:30

Ecco pronti al download il codice e le slide della mia sessione "Il mondo è sempre più client. ASP.NET e lo sviluppo Client Side" che ho tenuto il 9 marzo 2012.

IScriptControl, Knockout e le ASP.NET Web API sono stati i principali protagonisti :-)

Abstract: Le applicazioni che sviluppiamo, e che il mercato richiede sempre più, stanno modificando il modo in cui le applicazione vengono scritte. La logica di interazione con l'utente stà diventando sempre più client side, questo grazie anche all'espansione di dispositivi mobile che fruiscono le nostre applicazioni. JQuery ed il javascript in generale hanno un ruolo sempre maggiore, e permetteno in molti casidi poter far fare la differenza a ciò che sviluppiamo.

Come per il codice dello scorso meeting, per quanto riguarda il database utilizzato nella demo è necessario scaricare il database AdventureWorks che trovate al seguente link http://msftdbprodsamples.codeplex.com/e modificare la connectionstring del progetto web.

Tags: , , ,

ASP .NET | ASP.NET AJAX | XeDotNet | Microsoft

Codice e slide della sessione ASP.NET e lo sviluppo mobile

by Andrea Dottor 16 February 2012 09:42

Ecco pronte al download le slide ed il codice della sessione ASP.NET e lo sviluppo mobile che ho tenuto al XeDotNet Community Meeting HTML5 e lo sviluppo mobile del 10 febbraio 2012.

Abstract: I dispositivi mobile che permettono di navigare in rete sono sempre più diffusi, e gli smartphone ed i tablet ne sono l'esempio più lampante. In questa sessione vedremo come realizzare un sito ASP.NET che sia ottimizzato per questo genere di dispositivi sia dal punto di vista delle prestazioni ma anche delle problematiche riguardanti i dispositivi touch.

Come database per il codice della demo è necessario scaricare il db AdventureWorks dal seguente link http://msftdbprodsamples.codeplex.com/e modificare la connectionstring del progetto web.

Devo ringraziare tutti i partecipanti all'evento...vedervi così numerosi, e vedere facce nuove, ci da una carica in più e riuscite a farci quasi dimenticare le notti spese a preparare sessioni di questo tipo. Grazie

Tags: , ,

ASP .NET | .NET | XeDotNet

Inizia un nuovo anno per XeDotNet

by Andrea 11 January 2012 00:10

E' stato pubblicato il calendario degli eventi XeDotNet per il primo semestre del 2012.

10/02/2012 - HTML5 e lo sviluppo mobile

  • Andrea Dottor - ASP.NET e lo sviluppo mobile
  • Davide Senatore - Packaging HTML5 application with PhoneGap

09/03/2012 - Sviluppo client side

  • Andrea Boschin - What's new in Silverlight 5.0
  • Andrea Dottor - Il mondo è sempre più client. ASP.NET e lo sviluppo Client Side

06/04/2012 - Real world experience

  • Cristiano Simionato - Ma quanto costa Windows Azure?
  • Mirco Vanini - REST & .NET Micro FW - A Real Case

04/05/2012 - Uno sguardo a futuro

  • Davide Vernole - Visual Studio vNext - Application Lifecycle Management
  • Andrea Boschin - Sviluppare applicazioni Metro con Windows 8 e WinRT.

01/06/2012 - Playing with gadgets

  • Mirco Vanini - Are you a Gadgeteer?
  • Davide Vernole - Playing with Team Foundation Server
Per quanto mi riguarda, avrò il piacere di tenere due sessioni, basate su alcune esperienze lavorative che ho affrontato in quest'ultimo periodo.
Le sessioni si completano a vicenda, la prima basata sullo sviluppo verso il mondo mobile grazie all'utilizzo di HTML5, jquery mobile, ASP.NET MVC e WCF...mentre la seconda si propone di presentare alcune interessanti librerie javascript e la loro integrazione con ASP.NET, e alcuni suggerimenti di come sviluppare al meglio client-side.

Quindi non vi rimane che registrarvi ;-)

Tags: , , , ,

.NET | ASP .NET | ASP.NET AJAX | XeDotNet

Codice e slide della sessione ASP.NET MVC in a real world

by Andrea 28 September 2011 13:04

Sono disponibili al download le slide ed il codice della sessione ASP.NET MVC in a real world che ho tenuto al XeDotNet Community Meeting Web & Natural Interfaces del 13 settembre 2011.

Abstract: ASP.NET MVC stà prendendo sempre più piede, e le ultime release hanno portato importanti nuove funzionalità. Sempre più applicazioni vengono realizzate utilizzando questa tecnologia, e lo sviluppatore si trova ad affrontare nuove problematiche, che spesso differiscono da quelle di ASP.NET WebForm. Questa sessione non sarà una carellata sulle nuove funzionalità, ma bensì affronteremo problematiche reali in cui spesso lo sviluppatore incappa durante lo sviluppo di un'applicazione web, dimostrando quanto questa tecnologia sia flessibile e al tempo stesso potente e performante.

Un ringraziamento particolare ad Andrea Agnoletto per aver contribuito con la sua presentazione.

Tags: , , ,

ASP .NET | XeDotNet