Il prossimo 15 Novembre nella sede Microsoft di Milano, terremo un Dev Camp, cioè un laboratorio in cui potrete venire a realizzare applicazioni per Windows Phone, Windows 8 e Windows Azure. Poichè i posti sono limitati consiglio di iscriversi a chi è veramente interessato a partecipare e seguire i requisiti illustrati nel link di registrazione per Windows 8 e Windows Phone, per Azure vi lascio qualche informazioni in più.
Windows Azure
1. Collegarsi a http://aka.ms/ProvaWindowsAzure :
Le funzionalità in «Preview» si possono attivare dal seguente indirizzo: https://account.windowsazure.com/PreviewFeatures .
In particolare per i nuovi servizi di Azure vi consiglio di attivare la preview dei “Mobile Services” che usere anche per realizzare il back-end di applicazioni Windows 8 e Windows Phone e il servizio “Virtual Machine & Virtual Network” che serviranno per alcuni lab.
Maggiori informazioni qui.
Inoltre potete scoprire le modalità gratuite di accesso a Windows Azure con il programma BizSpark, il programma WebsiteSpark la sottoscrizione MSDN o la versione di valutazione valida 90 giorni.
Per sviluppare applicazioni che sfruttino la modalità PaaS di Azure è anche necessario installare l’SDK di Azure per Visual Studio 2010 o Visual Studio 2012. Trovate il link al download dell’ SDK da questo link.
La piattaforma Windows Azure si è arricchita di una molitudine di servizi che potete vedere illustrati nell’immagine sotto e se non vedete bene… potete usare il poster che potete scaricare da qui :-).
Vi aspettiamo!
Da poco è disponibile la v 1.0 dell’ SDK per Kinect che consente di sviluppare applicazioni che utilizzano questo dispositivo collegato ad un computer con Windows 7. Fino ad ora l’unico dispositivo utilizzabile era il Kinect for XBOX 360, quello che viene distribuito con la XBOX 360.
Con questa versione dell’SDK e, soprattutto per l’uso commerciale, è disponibile un nuovo hardware. Questo nuovo hardware abilità anche una nuova funzionalità dell’ SDK, il Near Mode.
Da oggi potete preordinare Kinect for Windows dal Microsoft Store Italiano. Il dispositivo sarà disponibile per la distribuzione dal primo di marzo.
Sul sito di Kinect for Windows trovate delle foto e dei video con esempi di applicazioni realizzate.
Buon divertimento!
Il prossimo 17 febbraio in occasione dei Community Days 2012, avrò l’opportunità di essere presente a uno dei primi laboratori su Windows Azure, la piattaforma di Cloud Computer di Microsoft. L’iscrizione è gratuita e potete farla dal sito della community.
Durante il lab saranno presenti con me anche Antonio Esposito , Roberto Freato di DotNetLombardia e Fabio Santini. Un’ottima occasione poter interagire con loro durante i laboratori e per parlare di Windows Azure.
La partecipazione ai laboratori è gratuita e così come l’accesso al materiale. Tuttavia è richiesto di arrivare “già pronti” per partire, cioè con il proprio computer configurato e un account Windows Azure attivo.
Configurazione del PC
Visual Studio 2010 e Windows Azure SDK gratuito per .NET rendono più semplici le attività di sviluppo per Windows Azure. Se non si dispone di Visual Studio 2010, con SDK verrà automaticamente installato Visual Web Developer 2010 Express, in questo modo sarà possibile avvicinarsi all'attività di sviluppo per Windows Azure senza sostenere alcun costo. Inoltre la procedura seguente si occuperà di configurare tutto l’ambiente utilizzato da Visual Studio 2010 e Internet Information Server (IIS) opportunamente configurato.
In particolare installa:
Passi da seguire per la configurazione del PC
Prima di avviare lo sviluppo dell'applicazione Windows Azure, è necessario ottenere gli strumenti necessari e impostare l'ambiente di sviluppo.
1. Per installare Windows Azure SDK e configurare l’ambiente di esecuzione fare clic sul pulsante seguente:
Quando viene richiesto di eseguire o salvare l’eseguibile, fare clic su Esegui:
2. Fare clic su Installa nella finestra del programma d’installazione e procedere con l'installazione:
Importante! Installare anche e SQL Server 2008 R2 Express (necessario per i laboratori ) o superiore, ma sempre Express. Per semplificare lo svolgimento del laboratorio è meglio avere installato la versione Express anche se si ha già installato una versione non Express.
3. Al termine dell'installazione, si disporrà di tutti gli elementi necessari per avviare l'attività di sviluppo.L’ SDK include gli strumenti necessari per sviluppare con facilità applicazioni Windows Azure in Visual Studio. Se Visual Studio non è installato, viene anche installato Visual Web Developer Express senza che sia necessario sostenere alcun costo.
Attivazione di una sottoscrizione gratuita per 3 mesi a Windows Azure
E’ possibile iniziare a sviluppare con Windows Azure, aprendo una sottoscrizione gratuita per 3 mesi. Questa sottoscrizione (“Free Trial”) consente di provare la piattaforma Windows Azure, senza costi e nessun obbligo alla fine dei 3 mesi.
Per aprirla andare su www.windowsazure.com, il portale dal quale avete accesso a tutta la documentazione e dal quale potete scaricare il software necessario. Dalla Home Page selezionate il link “scarica la versione di valutazione gratuita”.
A questo punto si arriva a una pagina di sign-up in cui è possibile procedere con l’attivazione.
Cosa serve per attivare una Free Trial?
Per aprire una sottoscrizione servono:
Per maggiori informazioni su cosa è incluso in questa sottoscrizione guardare questo link.
E’ disponibile un aggiornamento importante per la sicurezza di siti che utilizzano ASP.NET.
Il security update (MS11-100) è stato rilasciato ed è disponibile in modo automatico via Windows Update, Windows Server Update e dal download center di Microsoft. Trovate i link direttamente nel security update che vi ho indicato, oppure consultando l’articolo KB2638420 trovate il link diretto per il download a seconda delle varie versioni del framework .NET e sistema operativo usato.
Questo security update è stato rilasciato il 29 Dicembre e risolve un problema presente in tutte le versioni di ASP.NET.
Il 28 Dicembre durante una conferenza sulla sicurezza è stata mostrata una tecnica per compromettere strutture dati di tipo hash-table usate da diversi framework web, tra cui anche ASP.NET. Questo tipo di attacco non è specifico di un linguaggio di programmazione o di un particolare sistema operativo ed è noto come “hash collision attack”. Un attacco di questo tipo può portare a bloccare l’utilizzo del server causando il noto “denial of service” (DoS), poiché il server non è più responsivo alle richieste http che arrivano.
Il consiglio è di installare l’aggiornamento anche se non sono stati riportati attacchi di questo tipo e in caso di problemi di consultare il forum dedicato. E’ inoltre possibile seguire tutte le ultime informazioni seguendo MSRC team su Twitter at @MSFTSecResponse.
…Or How to prevent unnecessary http call on Remote Validation with ASP.NET MVC 3 and JQuery.
One of the cooler features with ASP.NET MVC 3 is Remote Validation. In a nutshell you can create a method on a controller class, putting the attribute Remote on your model and having jQuery.Validator plugin making an HTTP call to the controller to perform a custom validation logic that requires server-side logic, like for example check if a product name already exists on your database.
The JQuery.Validator plugin, in documentation says that: “Once a field was marked invalid, it is eagerly validated: As soon as the user entered the necessary value, the error message is removed”. This works great for me in case I have a field and the validation happens only client-side, but in case of a remote validation scenario, what happens is that an HTTP call is made every time user press a key.
If you look to what happens with a developer toolbar, you will see that every time you type a char an HTTP call is done. In the following image you see 4 HTTP calls. After the first one I press the tab key, a call is made and the field is marked as invalid, so I go back to the “ProductName” text box, and after that every time a press a key the JQuery.Validator eagerly try to validate remotely and make an HTTP call.
I want to avoid these calls every time and also I don’t want to to modify the two out of the box jquery file used by ASP.NET MVC: jquery.validate.js and jquery.validate.unobtrusive.js. My solution is to use the onkeyup event of the jQuery.Validate plugin and search for the html element that use the data-val-remote-url attribute and in that case prevent validation.
Here the code I have used in the razor view:
This helps me to reduce the HTTP calls as outlined in the following image. Here I have only 2 HTTP calls: the first one when I change the focus the first time, so that the HTML field became invalid and the second the second time. Note that I’ve written the same numbers of keys between the first and the second time as before, but now I have less calls.
The side effect to this solution is that validation on other fields with other validators start eagerly on every keyup event, but this could be considered reasonable in many situations.
You can download the javascript file from here.
I hope this snippet could help others that want to achieve the same result.
Sono da poco disponibili 4 nuovi video in italiano su ASP.NET MVC 3.
I video sono stati realizzati da Simone Chiaretta e da Ugo Lattanzi, Microsoft MVP, che vi consiglio di raggiungere sui loro blog se non l’avete già fatto.
I contenuti si rivolgono a chi ha già lavorato con le precedenti versioni di ASP.NET MVC e vuole scoprire in poco tempo le novità di ASP.NET MVC 3.
Spero che siano di vostro gradimento.
E’ da pochi giorni disponibile il download della Beta della versione 2 di WebMatrix. La versione 2 è l’evoluzione della precedente versione alla quale vengono aggiunte le funzionalità che vedremo a breve.
Se avete già installato la versione 1, questa verrà rimossa automaticamente e verrà installata la versione 2 Beta.
Editor migliorato
L’editor di testo adesso ha un supporto all’autocompletamento migliorato. In particolare con il supporto ai tag dell’ HTML 5 e jQuery.
L’editor dei CSS ha una comoda funzionalità: il Color picker, che consente di selezionare il colore da usare in modo comodo ed immediato:
Web Pages 2
Con il nuovo WebMatrix avete a disposizione nuove funzionalità delle Web Pages. Le Web Pages sono in sostanza il framework che vi consente di scrivere il codice che esegue la logica dell’applicazione.
Tra le novità trovate la validazione dell’ input lato client, che consente di ridurre i round trip verso il server .
Nuovi provider di autenticazione (Facebook, OAuth, Open ID etc). Un utente in possesso di credenziali Facebook, potrà quindi autenticarsi direttamente al nostro sito associando il suo account Facebook a quello di un account al sito.
Nuovi helper, come quello delle mappe, consentono di avere utili frammenti di codice per inserire nuove parti nel sito come, appunto nuove mappe.
Un altro aspetto interessante è il supporto per i device mobili; il framework offre funzionalità che permettono di gestire pagine diverse che in base al fatto che si stia navigando tramite un device mobile oppure tramite il browser del desktop, fa il rendering in modo diverso.
Potete vedere il dettaglio di queste fuzionalità a questo link che include le novità della developer Preview delle Web Pages 2.
Editor dei Dati
L’editor per la creazione di un database, delle tabelle e relativo popolamento era già presente nella versione 1 di WebMatrix. Questa nuova versione ne migliora l’usabilità e l’integrazione con il tool. In particolare è stato aggiornato sia la view per la creazione dei campi di una tabella, ora supporta il tab per spostarsi agilmente e le freccie per passare da un tipo di dato ad un altro. E’ stato anche aggiornata la view per il popolamento e la modifica dei dati e l’esecuzione di una query.
Pubblicazione
Già dalla versione 1, WebMatrix supporta la pubblicazione di un intero sito (pagine e database) in modo trasparente presso hoster che hanno un’infrastruttura compatibile. Se volete cercare un hoster potete accedere alla Gallery dedicata. Ora potete anche accedere remotamente alle pagine sull’hoster e modificarle da WebMatrix. Nella figura seguente vedete la “Remote View”, con cui si accede ai file remoti.
Estendibilità
WebMatrix 2 è estendibile utilizzando Visual Studio 2010, potete accedere alla lista delle componenti dalla Gallery di WebMtrix e scegliere cosa utilizzare.
Per chi vuole provare un tool gratuito, per partire da applicazioni già fatte e pubblicarle in modo semplice oppure vuole partire da template di codice, lascio di nuovo il link al download:
Video di presentazione della Beta della versione 2
Da qualche settimana è disponibile la beta dell’ SDK che consente di sviluppare applicazioni Windows utilizzando Kinect. Per sviluppare con Kinect vi servirà avere quindi il dispositivo e il cavo di alimentazione che si attacca alla corrente, che è incluso nella scatola del Kinect stesso.
Dato il periodo estivo ho avuto un po’ di tempo per fare qualche prova con Mario e divertirmi con il nuovo SDK.
Il Kinect è equipaggiato con:
Installazione
Per usare Kinect da Windows 7 potete scaricare la beta dell’ SDK da questo link. Alcuni degli esempi che utizzano il microfono interno richiedono l’installazione di altri componenti: Microsoft Speech Platform - Software Development Kit (SDK) (Version 10.2 x86), Microsoft Speech Platform - Server Runtime (Version 10.2 x86) e il Kinect for Windows Runtime Language Pack.
In generale trovate i requisiti di sistema, il download del software, esempi e documentazione partendo da questo link.
Un esempio di codice
Per divertirmi un po’ con Kinect ho provato a realizzare un Add-in per PowerPoint 2010. L’idea è quella di riconocere almeno due semplici “gesture” per andare avanti ed indietro in una presentazione fatta di slide. Molto semplicemente ho deciso di rilevare:
Inoltre ho fatto qualche modifica all’interfaccia e il risultato di come si presenta PowerPoint con l’Add-in installato è il seguente:
Ho aggiunto un Ribbon con due bottoni:
Le modifiche all’interfaccia sono “cose in più”, non sarebbero necessarie se si volesse solo andare avanti indietro nelle slide, le ho aggiunte per comodità.
Per la parte “core” ho creato un progetto da Visual Studio 2010 di tipo PowerPoint 2010 Add-in.
Aggiungete quindi i riferimenti alla libreria di Kinect:
e quindi intercettare alcuni eventi messi a disposizione dall’ Add-in: sull’evento di Start-up ho aggiunto il rilevamento dell’evento SlideShowBegin e SlideShowEnd, di questi due eventi in particolare il primo mi serve per far fare il lavoro vero alle API di Kinect quando l’utente fa partire una presentazione.
Ecco nel seguito parte del codice, alla fine dell’articolo troverete il link per il download completo dell’esempio:
Prima cosa bisogna istanziare il Runtime di Kinect, quindi inizializzarlo impostando tramite un Enum in cui si dichiari quali tipi di funzioni si vuole utilizzare: nel mio caso userò sia la vidocamera a colori (RumtimeOptions.UserColor) questo serve solo nel Pannello di PowerPoint per tarare l’altezza del Kinect. Invece il parametro UseSkeletalTracking serve se volgiamo poi rilevare il movimento dello scheletro della persona. A questo link trovate un guida di dettaglio.
In pratica quello che ci mette a disposizione lo SkeletonTracking del Kinect sono una serire di punti detti Joint (Testa, Spalla sinistra, Mano Sinitra etc) di cui possiamo essere notificati tramite un meccanismo ad eventi della loro posizione (x,y,z) e quindi in base a questa decidere cosa vogliamo fare. Tenete presente che non esistono al momento delle “gesture” già codificate dentro all’ SDK, ma dobbiamo decidere noi quali gesture implementare, in base alla posizione dei Joint che sono interessanti rilevare per la nostra applicazione. La schermata seguente vi dà un’idea di cosa “vede” Kinect quando utilizza la modalità di SkeketonTracking: ogni pallino è un Joint.
Dopo l’inizializzazione del Runtime trovare una serire di parametri TransformSmootParameters, questi parametri servono per migliorare la sensibilità con cui Kinect rileva i vari Joint. Ad esempio operando su alcuni di questi, nel mio caso ha fatto un po’ di prove Mario, possiamo rendere più precisa o meno la rilevazione di certi movimenti.
Ora bisogna agganciare gli eventi che ci ineressano: SkeletonFrameReady e VideoFrameReady. Il primo è il più importante dei due per il nostro esempio perchè ci dà i vari Joint di cui vogliamo avere le coordinate. L’altro serve per creare una serire di imagini in sequenza molto rapida che danno l’impressione di vedere il video dentro PowerPoint e che come ho già detto servono solo per tarare il Kinect.
Andiamo a vedere cosa succede dentro l’evento SkeletonFrameReady. In buona sostanza riceviamo una serire di eventi che contengono per ogni “evento” rilevato i Joint. Quindi possiamo prendere quelli che servono, come vedete nel codice seguente:
Nell’esempio precedente per ogni SkeletonData, recupero la posizione dei Joint che mi interessano (testa, mano destra, mano sinistra, centro della vita), quindi ora posso scrivere il codice che rileva la mia gesture. Bisogna tenere presente però che un evento viene rilevato in continuazione: quindi se rilevassi una gesture per andare avanti con le slide, quando il presentatore muove la mano destra verso sinistra (come se sfogliasse un libro) e mandassi avanti la slide, quello che succederebbe e che la rilevazione avverrebbe più volte al secondo e quindi arriverei in un baleno alla fine dello slide deck. Per ovviare a questo comportamento rilevo solo il primo movimento e appena intercettato imposto una variabile (mettendola a False) di modo che non possa più andare avanti con le slide. Quando poi rileverò che l’utente torna in una posizione di riposo (riporta indietro la mano destra) allora reimposterò a True la variabile precedente, così al successivo movimento si andrà avanti con le slide.
Nel codice precedente notate che se sono in una condizione in cui la slide può essere mandata avanti (_slideCanChangeNext2) (utente era prima in una posizione di risposo), controllo la posizione della mano destra, la posizione rispetto all’asse X deve essere a sinistra della testa e inoltre la posizione Y della mano deve essere più in alto del centro della vita + un offset, che uso per evitare che se l’utente si muova troppo vengano rilevati falsi avanti e indietro nelle slide. Se la verifica ha avuto successo posso mandare avanti la slide di una con il codice SlideShowWindow.View.Next().
Conclusione
In questo breve articolo (estivo) ho voluto provare il modello di programmazione della beta dell’ SDK per Kinect integrando le API in un Add-In di PowerPoint 2010, che tra le altre cose utilizza i Ribbon di Office 2010 e un CustomTaskPane che contiene una serire di controlli WPF. Potete scaricare il codice completo dell’esempio da questo link. (file powerkinect1.0.0.5.zip) L’Add-in è pensato per PowerPoint 2010 e funziona solo con le versioni 32 bit di Office 2010 perchè gli assembly di Kinect, che sono al momento in beta, sono utilizzabili in contesti a 32 bit.
Il codice d’esempio contiene anche un’altra gesture… da usare con cautela durante una presentazione….scopritela!
Buon divertimento con Kinect, spero facciate applicazioni interessanti!
Come penso sappiate Orchard è un progetto gratuito, open source e soprattutto community-focused.
Orchard è scaricabile dal sito del progetto e da poco potete scaricare anche i file localizzati in Italiano, consentendovi quindi di avere l’interfaccia localizzata.
Il lavoro di localizzazione è stato portato a compimento da Simone che si è occupato della localizzazione in Italiano collaborando il team di Orchard insieme ad un altro gruppetto di volenterosi.
Oggi ha fatto un post con l’annuncio: qui il post in inglese, qui quello in Italiano, dove trovate anche le istruzioni su come aiutare la community a migliorare la traduzione e tenerla aggioranta.
Come installare il file per la localizzazione?
L’utilizzo dei file localizzati sul vostro sito fatto con Orchard è molto semplice, un metodo è il seguente:
Scaricate il file zip che contiene i file localizzati in Italiano e estraete il contenuto nella root del sito: attenzione a non creare una directory per lo zip ma dovete fare il merge delle cartelle contenute nello zip con quelle del sito Orchard che dovrete preventivamente aver creato. Vi apparirà un messaggio come quello mostrato di seguito:
Per cambiare il default della lingua, andate sotto: Settings->General nella Dashboard di Orchard. Sotto Default Site Culture, cliccate su Add or remove supported cultures for the site
Quindi nella schermata seguente, selezionate it-IT culture dalla lista e premete Add.
Tornate ora nella schermata dei Settings, a questo punto impostate la lingua it-IT e premete Save.
Da questo momemto il sito avrà l’interfaccia localizzata in Italiano.
Se non avete ancora provato Orchard, potete utilizzare Microsoft WebMatrix e installarlo direttamente da lì.
Buon divertimento con Orchard!
Lo sviluppo di applicazioni web da zero è in alcuni casi una soluzione costosa in termini di tempo impiegato e di risorse coinvolte. Negli scenari in cui non sia possibile iniziare a sviluppare un’applicazione da zero vengono spesso usate applicazioni Open Source su ASP.NET.
In questo ultimo anno Microsoft ha messo a disposizione strumenti nuovi per l’installazione e la pubblicazione di queste appllicazioni. Noti CMS, blog Engine e motori di Forum su ASP.NET, Wiki e applicazioni per il commercio elettronico sono oggi ospitati sulla Web Application Gallery sul sito Microsoft. La Web Gallery si integra con strumenti come il Web Platfrom Installer e WebMatrix.
Potete usare strumenti come il Web Platfrom Installer per installarle sulla vostra macchina oppure per scaricare tool gratuiti per lo sviluppo Web o Windows Azure. Questo tool gratuito vi guiderà nell’installare tutte le dipendenze necessarie all’installazione. Se ad esempio un’applicazione ha bisogno di usare SQL Server, abilitare ASP.NET etc. e questi non sono installati, verranno scaricati e installati prima dell’applicazione stessa, infine il Web Platfrom Installer vi guiderà nel processo di setup della vostra applicazione preferita in pochi passi.
Potete inoltre installare Microsoft WebMatrix, questo tool gratuito non solo si integra con la Web Gallery e vi aiuta ad installare le applicazioni Open Source su ASP.NET, ma vi dà dei template per partire a sviluppare piccole applicazioni Web, senza la necessità di dover iniziare a scriverle da zero. Scaricate le applicazioni, avete la possibilità di testarle in locale, modificandone eventualmente il codice tramite un semplice editor di testo, piuttosto che farne analisi per verificare come migliorarle dal punto di vista di come si presentano ad un motore di ricerca, facendo analisi SEO sulle stesse.
Infine, spesso, uno dei problemi che si pone dopo aver realizzato una soluzione con queste applicazioni è cercare e trovare un hoster che faccia hosting adeguato. In queste ultimi mesi già alcuni hoster stanno cominciando a realizzare infrastrutture compatibili con WebMatrix e pubblicare offerte in una Hosting Gallery a loro dedicata. Vi consiglio di tenere d’occhio le offerte che appariranno in questa gallery e di cercare quelle più adatte alle vostre esigenze.
ASPItalia:le migliori applicaz. Open Source per il web
Le applicazioni Open Source su ASP.NET sono un numero considerevole, pertanto vale la pena approndirle e capire meglio come possano aiutarci nello sviluppo quotidiano.
Con oggi inzia uno speciale realizzato dalla community ASPItalia, che vuole aiutare tutti gli sviluppatori ASP.NET a conoscere meglio le applicazioni Open Source più note realizzate dalle community di sviluppatori ASP.NET, come DotNetNuke, Umbraco, nopCommerce e mojoPortal o quelle più emergenti come Orchard. Inoltre lo speciale ospiterà atre soluzioni basate sul mondo Open Source che gravitano intorno a .NET e sarà quindi un utile spunto per conocere o approndire altre soluzioni.
Vi consiglio di partire da subito seguendo questo link, dove troverete l’annuncio dello speciale direttamente dalla community ASPItalia.
Nelle prossime settimane, a scadenza settimanale, troverete gli approfondimenti sui vari temi, i primi appuntamenti saranno con Marco De Sanctis, Gianluca Esposito e Riccardo Golia. Sulla pagina dedicata trovate il piano editoriale delle prossime settimane i cui appuntamenti saranno con Orchard e nopCommerce.
Buona lettura per le prossime settimane.
Durante Mix 11, che si sta svolgendo in queste ore è stato rilasciato un Aggiornamento dei tool per ASP.NET MVC 3. Questo è un aggiornamento solo dei tool per Visual Studio 2010 e non del runtime che rimane quindi invariato. Vediamo le novità.
Template di progetto
Tra le novità troviamo un nuovo template di progetto per progetti di tipo Intranet, che supportano l’autenticazione integrata e che rimuove la classe AccountController. Questo nuovo template lo trovate tra gli altri disponibili tra i progetti ASP.NET MVC 3, come vedete nella figura seguente.
Inoltre nella stessa schermata per la scelta dei template trovate un check-box per abilitare il supporto all’ HTML 5 nel template, ad esempio nella pagina che definisce il template del sito (_Layout.cshtml) trovate l’uso dei tag semantici come header, nav e footer.
Scafolding del modello con EF 4.1
La finestra per l’aggiunta delle classi controller ora fa lo scafolding automatico del modello dei dati esposto con EF 4.1 (Anche quest’ultimo rilasciato oggi in versione RTM). Quindi ora se avete la vostra classe Customer, Visual Studio 2010 è in grado di generare il codice delle operazioni CRUD e non solo i metodi “vuoti” come faceva in precedenza. Nella figura seguente vedete la nuova Dialog per l’aggiunta del controller:
Ho scelto tra i template disponibili quello che genera appunto un controller e le view con le operazioni CRUD che fanno riferimento al modello fatto con E.F. il cui modello è la classe Product ed il cui Data Context è Northwind, nell’esempio che ho usato.
Il risultato è quello che vi raccontavo a parole ed è illustrato nella figura seguente: guardate le view aggiunte ed i metodi Index(), Details() etc con il codice che accede al DataContext Northwind.
La finestra per l’aggiunta di un controller può inoltre essere estesa tramite NuGet, abilitando altri scenari di Scafolding automatico, tramite plugin infatti è possibile aggiungere nuove funzionalità.
JavaScript e NuGet
Incluse le librerie aggiornate di JQuery:
E’ stata inoltre aggiunta la libreria Modernizr, che consente di poter sfruttare caratteriste evolute degli standard HTML 5 e CSS 3 senza rinunciare alla compatibilità dei browser che non le supportano.
Inoltre queste librerie vengono aggiunte nei template di progetto da NuGet e possono quindi essere facilmente aggiornate grazie all’uso di questo Packet Manager.
Nella figura seguente vedete le librerie aggiunte al template di progetto, anche Entity Framework 4.1 è già aggiunto tramite NuGet al template di progetto.
In conclusione: novità che rendono l’uso di ASP.NET MVC 3 ancora più semplice, elegante, completo e divertente da usare.
Dopo il rilascio della versione finale di IE9 mi fa piacere annunciare la disponibilità della RC di un nuovo plugin per Joomla! che abilita le funzionalità del pinning di IE9. Il plugin è stato realizzato da Marco Maria Leoni, che ho avuto il piacere di incontrare qualche mese fa a Milano e da qui l’idea. Marco ha realizzato il plugin disponibile sia per la versione 1.5 di Joomla! che per la neoarrivata versione 1.6. Sul suo sito potete scaricare e leggere come configurare il plugin e sempre da questo sito potete scaricare le ultime build e contribuire a migliorarne l’uso. Il plugin è anche disponbile sul repository ufficiale.
Il plugin si integra all’uso dei menù di Joomla! e grazie a questi mette a disposizione sia le Jump List statiche, che prendono i contenuti da uno dei menù scelti da voi, e sia le Jump List dinamiche per visulizzare le ultime novità del vostro sito. All’aggiornarsi di queste, variano anche le voci presenti nella JumpList in modo dinamico.
Le funzionalità di pinning di IE9 possono essere segnalate agli utenti che arrivano sul vostro sito e che appunto usano IE9 per la navigazione, tra le funzionalità del plugin trovate un’opzione che fa apparire in alto a sinstra un messaggio che appare agli utenti di IE9 che non hanno ancora abilitato questa funzionalità.
Installazione di Joomla! con WebMatrix
Ho provato il plugin di Marco partendo da WebMatrix, potete anche utilizzare il Web Platform Installer e scaricare ad esempio Joomla! 1.5. Durante l’installazione ho scelto inoltre di avere dei dati di test per fare qualche prova.
Nella figura seguente potete vedere Joomla! 1.5 in esecuzione sulla mia macchina, all’interno di IE9 lanciato direttemente da WebMatrix. Se volete utilizzare il Web Platform installer potete leggere questo articolo sul sito Joomla.it.
Installazione del plugin di Marco per Joomla!
Dal sito di Marco scaricate l’ultima versione del plugin, in base alla versione di Joomla che state usando:
A questo punto bisogna loggarsi come amministratore sul sito Joomla sul quale volete abilitare il pinning, dal pannello del backend, andando su Estensioni, Installa/Disinstalla, quindi da Carica file pacchetto, prima cercate con “Browse…” il file .zip relativo al plugin che avete scaricato e successivamente premete su “Carica file & Installa”. Nella figura seguente vedete il messaggio in blu che avverte della corretta installazione del plugin.
Ora andate in Estensioni, quindi Gestione plugin, ricercate il plugin, ad esempio scrivendo IE9 nel filtro delle ricerche. Una volta trovato la prima cosa da fare è attivarlo, basta cliccare sulla x rossa e a questo punto il plugin è abilitato e dovreste vedere un’icona verde che appare di financo al plugin come in figura seguente.
Configurazione del Plugin
Se selezionate il plugin appena attivato entrate nel menù di configurazione, trovate la spiegazione dei dettagli sempre sul sito di Marco. Nel mio caso ho scelto il “Nome Menu” è ho messo mainmenu. Quindi ho messo “Mostra icone dei menù” a no. Inoltre ho dato un nome alla categoria che conterrà le news di Joomla!: “Ultime notizie”.
Nella figura seguente ho trascinato la tab con il vostro sito sulla taskbar di Windows 7
Una volta che il vostro sito è in pinning ,il risultato è quello che vedete nella figura seguente, se andate sull’icona sulla taskbar.
E’ possibile inoltre avere icone ad alta risoluzione che vengono visualizzate quando l’utente effettua l’operazione di drag & drop del tab del sito per agganciarlo alla barra di Windows 7. Maggiori informazioni le trovate al Customizing the Site Icon.
Esiste poi un altro menù avanzato che contiene alcune impostazioni in più. Anche queste informazioni sono documentate sul sito di Marco. Qui potete vedere il pannello della build che sto provando, ma potrebbe essere diversa in base all'ultima versione rilasciata.
Dal menù potete definire il tooltip che appare quando passate con il mouse sull’ icona presente nell lista dei programmi. Inoltre potete scegliere il colore dei bottoni di IE9 e cosa più importante, potete definire se visualizzare un messaggio ai soli utenti di IE9 che non hanno ancora utilizzato il Pinning. Per abilitare questa funzionalità mettere a sì “Disegna il layer di trascinamento” quindi potete definire il codice che viene usato dentro il layer che appare nella pagina e il css usato per la grafica nella parte successiva.
Il risultato è il seguente, lasciando le impostazioni default:
Come vedete in figura, il layer appare se navigate sul sito con IE9 e non avete ancora fatto il pinning del sito. Oltre al messaggio che potete scrivere in italiano modificando quanto presente nel menù, se premete sul link nero il sito viene aggiunto alla lista dei programmi di Windows 7.
Le funzionalità di Pinning di un sito e le Jump List possono rendere più comoda la vita di un visitatore ai nostri siti che usano Internet Explorer 9, fortunatamente esiste ora un plugin per Joomla! che ne consente un facile utilizzo, senza scrivere codice, quindi … perchè non usarlo.
Link tecnici utili per approfondire
…all’evento online che verrà trasmesso in streaming il 15 Marzo alle 14.30.
Cominciamo dai dettagli:
Ecco l’agenda del WebCamp Online:
Gli Standard HTML 5, JavaScript e CSS3:
Applicazioni ASP.NET Open Source:
Nel mio caso presenterò le 3 sessioni su ASP.NET MVC 3 ci vediamo online o in chat.
Sono da pochi giorni disponibili i video fatti con Giuseppe e Ugo per SMAU su Internet Explorer 9. Sfortunatamente la qualità video non è delle migliori, a causa di un errata codifica, ma abbiamo deciso di pubblicarli comunque perchè pensiamo possano essere ugualmente utili.
Ecco i link diretti ai video:
Giuseppe sta inoltre lavorando ad una serie di post su HTML 5 che possono essere utili a tutti e quindi vi suggerisco di dare un’occhiata al suo blog.
Now that ASP.NET MVC 3 is in RC 2 and after reading some interesting blog posts on Razor’s syntax, I’ve decided to make some experiments building a simple Razor Helper. A helper is basically a snippet of code that you can create to generate some HTML using some code and that you can reuse in different part of your site.
What this Helper is about
I want to create an helper that can be used to read content from file system, like a JavaScript file or a CSS file and to insert the content inline in a HTML page. At the end I’ve also created a second helper, to embed also image inline on a HTML tag. If you’re wondering why I need to embed inline Javascript and CSS file in a HTML, the reason for that is to optimize the scenario that a user download a page for the first time of a new visited web site. If your page contains a lot of JavaScripts files and CSS files your browser will probably perform a lot of GETs to retrieve them (the first time you visit a site your browser’s cache is probably empty). So embedding inline code in the HTML page reduce the number of round-trips to get the content and in a single one you can retrive the all code necessary to execute the page. There’re some books that you can read that can give some advice on this scenario and how to optimize the second view to the same site. For now let me introduce how I’ve built a simple helper, just for fun of building an helper.
Building and testing the Helper
To create and test my simple helper I’ve started creating a simple ASP.NET MVC 3 RC 2 project. Then I’ve added an App_Code folder that contains the Razor code. You can also build a library where to put your code, but to be more flexible I’ve followed the simple way. In the same folder I’ve put a file RazorHelpers.cshtml file. This name is important because I’ll use it to reference the helper in my code.
Now I declare some code inside the file: @helper keywork is used to create the helper, and the @funcions keywork to create some internal functions that I’ll call from helper itself. The file looks like the following, where FileGetContent is the function name of the Helper, it’ll be used as a static method.
I want to use the helper inside the _Layout.cshtml file in the Shared folder. This file is the template for the entire site, and now looks like:
I want to replace the Link and Script tag with my helper, that will put the code inline in the page and avoid the two query to server for the CSS and JavaScript file. So, the syntax looks like this piece of code:
The full code of helper is this one:
The logic of the helper is very simple, the FileGetContent call the function fun_fileGetContent that reads the content from file sytem, using different convention for the beginning of the file name or from the network, checking the common pattern using to express the name of the file, for example starting with http, or instead with ‘/’ char or ‘~’. Probably I need to add more code to make the helper more robust.
I’ve also tried to use the helper to add an inline image, so I’d like to have something like:
where I can literally embed a base64 encoded image inside an HTML img tag with the DataURI schema as in the previous image sample code. For that purpose I’ve created another helper, named FileGetBinaryContent: (I can’t use string encoding for array as in the previous code).
And now I can use the the code in my Razor View to insert an image of myself (of course, you can use others):
This is resulting page:
The page makes a single call and embed a CSS a file JavaScript an Image, but the most important thing of this post is that I’ve build two helpers and used them with the new Razor Syntax.
If you want to see the full example you can download the code from here.
Summary
In this post you have seen that you can create snippet of code that can be reused in different part of your site with a cleaner and compact syntax.
Il prossimo 3 Dicembre sarò a Bari presso l’hotel Best Western Hotel HR, SS 96 km 119,300, Bari - Modugno 70123, dove si terrà un evento con laboratorio organizzato dalla community DotNetSide in collaborazione con Microsoft Italia
Agenda Evento
L’evento inizierà alle 10. Per registrarsi è sufficente andare al seguente link.
L’agenda prevede:
Agenda Laboratorio
Dalle 12, inoltre, sarà possibile provare le proprie applicazioni su un Windows Phone 7 reale.
Per partecipare al Lab, portate le vostre applicazioni su chiavetta USB e mandateci una mail a itamsdn@microsoft.com indicando specificatamente la data dell'evento (3 Dicembre), la città (Bari) e quali applicazioni volete testare.
L’agenda completa e aggiornata è disponibile sul sito della community a questo link.
Vi aspetto.
If you’re working on a Silverlight application for WP7 and you want to localize non only the resources inside the application, but also the Title name of your application you could find some useful information on this post that make your app easily uploaded and certified on the App Hub (the marketplace).
The result of you localization process will be as the following, in the emulator (you can test this on it) you’ll see the same app using different names for English, Italian, French, Spanish and German.
In the following pictures you can see the difference, switching between English and Italian.
To switch, you have to go in settings menu of your emulator (or device) and change the language and than tap to screen to reboot it using the new configuration.
How to localize
Basically to localize the Title you have to create a resource-only project for the following languages in C++, build and add the assemblies to the root of you Silverlight project. To do this you have to use Visual C++ compiler (unfortunately the Visual C++ Express can’t be used, but if haven’t a full copy of Visual Studio 2010 you can download a trial).
I’ve create a simple Silverlight project and the resource-only C++ projects that you can download and easily personalize.
You can see in following picture how it looks like:
The WP7SilverlightLocalizedSample depends on some C++ projects. You hadn’t to rename the C++, projects, they must be named exactly as they are, instead you can add you personal Silverlight project to the Solution.
Every C++ project have some post-built rules that copy the resource assemblies in the root of the solution. In the Silverlight project I have “add a link” to the generated assemblies and I’ve set the properties for these seven files as “Content” in the Build Actions.
If you now want to localize the names of your application in different languages, first start from the AppResLib, and right-click on the AppResLib.rc file , than view code, and you’ll enter in the resource file.
The AppResLib is the assembly for the language-neutral.
In the resource file you can search for the two string “AppTitle” and “AppTileString” and change them as you prefer.
You have to do the same stuff for other assemblies:
How to setup the Silverlight Project
Now that you have localized the resource-only assemblies you have to change the WMAppManifest.xml , that you probably have on the properties folder and change the two strings as in the following pictures:
So you have to put in App element the Title attribute as
@AppResLib.dll,-100
and the Title element in the TemplateType5 as
@AppResLib.dll,-200
and you’ve done!
Conclusion
If you want to localize the title of your Silverlight app for the marketplace you can use the sample I provided, if you’re using XNA for building game you can see the detailed Aaron Stebner’s post from here.
Happy coding with Windows Phone 7.
E’ stata rilasciata la beta della Service Pack dei WCF RIA Services. Potete scaricare la beta partendo da questo link.
Se avete installato il toolkit dei RIA Services ed i WCF RIA Services V1.0 dovete disinstallarli prima d’installare la nuova versione. La beta è stata rilasciata con licenza Go-Live. Oltre la SP1 beta, trovate anche il WCF RIA Services toolkit aggiornato ad ottobre.
La beta è già localizzata in 10 lingue, comprese l’Italiano .
Le novità
Novità del Toolkit
More infos
Il prossimo 5 Novembre, sarò a Napoli, presso l’hotel Holiday Inn, ospitato dalla community DotNetCampania, con cui avrò il piacere di partecipare all’evento che stanno organizzando in collaborazione con Microsoft.
Agenda
La registrazione inizierà alle 14.00 e penso di partire con la keynote alle 14.30, siate puntuali.
L’agenda prevede, nell’ordine:
Sorprese
Per ogni partecipante all’evento verrà distribuita una maglietta di IE9 e ci sarà una sorpresa di “valore” che verrà estratta durante l’evento.
Inoltre, cercherò di portare almeno un cellulare Windows Phone 7 da far girare tra il pubblico… ricordatevi di ridarmelo alla fine dell’evento!!
Dovrei arrrivare in areoporto alle 11.00 e poi andrò direttamente all’ Hotel Holiday Inn, se qualcuno volesse chiedermi qualcosa prima dell’evento mi mandi pure una mail che vediamo di incontrarci.
Da domani, trasmettereno in diretta da SMAU, 4 eventi tecnici dedicati a sviluppatori per Windows Phone 7, Internet Explorer 9 e Windows Azure, e per professionisti IT in cui si parlerà di Windows 7.
Sotto trovate la scaletta con gli orari:
Gli eventi che vedrete in Smooth Streaming, saranno visibili da qui, già da oggi ci sono altri eventi Microsoft che sono trasmessi in diretta da SMAU.
Internet Explorer 9
Nel mio caso prenderò parte all’evento sulla beta di IE9. L’evento è così strutturato:
Ecco qualche screenshot delle cose che vedremo in 30 minuti durante la sessione:
Per chi c’è ci vediamo in SMAU.
Da poche ore è diponilbe un’ importante download per una vulnerabilità alla sicurezza di ASP.NET. Durante la scorsa settimana sono stati pubblicati diversi post, che ho ripreso sul blog di MSDN Italia, che segnalavano due workaround il primo e il secondo e una serire di aggiornamenti.
E’ ora disponibile la fix a questa vulnerabilita’ e che non rende più necessario l’uso dei workaround che sono stati proposti per aiutare in caso di attacchi.
L’aggiornamento sarà disponibile via Windows Update, ma è già scaricabile da Microsoft Download direttamente.
Potete anche registrarvi per un webcast su TechNet per saperne di più a questo link.
Sul blog di Feliciano Intini trovate utili informazioni su questo aggiornamento correttivo ed in generale sulla sicurezza.
Update 1/10/2010
Da oggi è disponibile la fix per la vulnerabilità direttamente da Windows Update, è consigliabile installarla e tenere allineate tutte le macchine della Farm.
Da poco cominciano ad essere disponibili le sessioni di REMIX 10. Qui vi inserisco i link diretti alle sessioni da me tenute durante l’evento, sperando di fare cosa gradita e rispondere con un post ad alcune domande che mi avete fatto: scusate per il ritardo nella risposta.
I WCF RIA Services sono il modo più rapido per esporre e consumare dati con Silverlight 4, durante questa sessione avete visto come usare i controlli per realizzare applicazioni di business, “alla gestionale”, sfruttando Grid, paginazione, ordinamento, usando un framework di navigazione e, infine, avete visto come portare l’applicazione Out-Of-the-Browser(OOB) e permettere all’applicazioni di accedere ad oggetti COM sulla macchina Windows, come Excel.
Nota: se state sviluppando con i WCF RIA Services, fatemi sapere come vi trovate: se ci sono funzionalità che mancano, bug etc.
Update:
Silverlight 4 e i WCF RIA Services sono ora in versione finale (RTM) e fanno quindi parte dello stack web rilasciato e supportato da Microsoft. Vanno installati su Visual Studio 2010 in versione finale, anche sulla Express e sono disponibili solo per la versione 2010 di Visual Studio, a differenza delle preview precedenti che avete visto lo scorso anno a REMIX.
Documentazione MSDN sui WCF RIA Service.
Ho copiato il codice di esempio usato durante la sessione a questo link, spero sia utile per seguire meglio.
In questa sessione abbiamo messo a confronto due modi diversi di sviluppare, partendo da un framework ormani conosciuto come ASP.NET WebForm, di cui abbiamo visto le novità, e ASP.NET MVC 2, di cui ho messo in luce le novità e differenze rispetto alle WebForm. Quindi scegliete pure il framework che preferite secondo “gusto” informatico, abitudini del team, codice già scritto etc.
Fiddler è un tool che mi è stato più volte utile in progetti reali, spero di avervi almeno fatto “respirare” un po’ della logica con cui è possibile usarlo. Oltre a Fiddler in questa sessione avete visto Internet Exlorer 9, la platform Preview 2 3, ora disponibile per il download. Spero che vi siate resi conto che IE9 sarà un browser in cui molte delle funzionalità aggiunte sono guidate dalla comunità dei developer: developer tool migliorati, implementazione delle specifice più stabili di HTML 5, CSS3 in pieno accordo con i maggiori organi di standardizzazione e non guidati delle mode del momento o da specifiche non ancora completamente chiuse. E poi accelerazione hardware via GPU ed un nuovo motore di JavaScript… stay tuned.
Durante la sessione alcune delle novità sono state mostrate grazie all’aiuto dell’ amico Giorgio, che si è fatto un viaggio di parecchie ore per venire a trovarci da Redmond e mostrarci novità in anteprima.
Spero vivamente che le sessioni siano state di vostro gradimento e vi possanno essere utili nella vostra vita lavorativa. Remix10 è un evento gratuito che spero sia apprezzato per la qualità e quantità dei contenuti. Sto raccogliendo tutti i link alle sessioni facendo dei post sul blog MSDN Italia il primo lo trovate qui. Fatemi pure sapere cosa vi è piaciuto e cosa no, comprese quali sessioni sono state più utili. Buon lavoro.
Da oggi tramite il Web Platform Installare 3.0 è disponibile la beta del nuovo Microsoft WebMatrix, con cui è possibile scrivere siti web in modo molto semplice. Questo tool non va a sostituire Visual Studio, ma è pensato per chi vuole usare un’ approccio ancora più semplice allo sviluppo web ed in cui Visual Studio sarà d’aiuto in una fase successiva. In particolare il modello di sviluppo utilizza un nuovo View Engine per ASP.NET, che sarà disponibile anche nella prossima versione di ASP.NET MVC.
In questo post vedremo una rapida guida. Installiamolo dal Web Platform Installer, selezionando la voce presente nel seguito.
Questo installerà:
Lanciamo ora WebMatrix, apparirà la schermata seguente:
Nel nostro caso selezioniamo quest’ultima opzione perchè mi dà modo di mostrarvi la nuova sintassi ASP.NET. Scegliamo tra i siti i template disponibili, io ho scelto “Bakery” e ho dato il nome MyBakery, come vedete nella figura seguente:
Ora avete un sito web già fatto, di cui potete ispezionare i file. Il sito è fatto usando il nuovo View Engine e potete usarlo per impadronirvi della nuova sintassi, che come vedrete richiede poco sforzo e soprattutto riutilizza le conoscenze di .NET che già abbiamo. Qui e qui trovate due esempi di dettaglio sulla sintassi, non tutti funzionanti nella beta attuale, ma che verranno aggiunti via via.
I file hanno estensione .cshtml e contengono una parte di codice in CS ed un parte di codice HTML. In particolare nella pagina Default.cshtml trovate un blocco di codice identificato dal simbolo @, ove viene definita la pagina che contiene la struttura del sito, la master-page se volete, associata alla proprietà LayoutPage e viene valorizzata la proprietà PageData[“Title”]. Dove verrà usata? Apriamo la pagina _Layout.cshtml.
In questa pagina, che contiene la struttura del sito, viene usato il valore impostato nella PageData[] utilizzando la sintassi @, questa volta non all’interno di un blocco di codice, ma per sotituire il valore impostato nella pogina Dafault.cshtml che abbiamo visto in precedenza. Come potete immaginare il risultato che arriverà al browser dell’utente sarà il “merging” delle due pagine.
Possiamo anche provare a fare una piccola modifica per visualizzare la data corrente. Nella Default.cshtml aggiungiamo il codice evidenziato in rosso dove uso la classe .NET DateTime.
Lanciamo ora l’applicazione usando il menù a Ribbon di WebMatrix che ci permette di scegliere tra alcuni dei browser che abbiamo installato per la preview, scegliamo IE.
Il risultato sarà:
Che conterrà la data che volevamo visualizzare. Il sito web creato vive in un folder locale all’utente e si trova in un path simile a questo: C:\Users\<user>\Documents\My Web Sites\MyBakery
Con WebMatrix è stato installato anche il nuovo IIS Express, trovate l’icona in basso nella system tray e se vi cliccate vedete i siti che sono in esecuzione.
IIS Express è una versione di IIS pensata per lo sviluppatore: da un lato offre le funzionalità di IIS 7.x tra cui il supporto a HTTPs e la possibilità di fare URL Rewrite, dall’atra parte la flessibiltà di un Developer Server, come quello al momento presente in Visual Studio. IIS Express consente di essere copiato su una macchina Windows, anche XP, non gira però come servizio e non richiede diritti amministrativi, ma deve essere lanciato come un semplice eseguibile, in questo caso lo fa direttamente WebMatrix. Inoltre ha una configurazione per utente che trovate nel folder “C:\Users\<utente>\Documents\IISExpress8”.
L’applicazione d’esempio utilizza anche un database, se cliccate nel menù in basso potete vederlo in modo più esplicito anche se si trova nell’usuale (per ASP.NET) folder AppData.
Da WebMatrix potete creare semplicemente un Database; creare, cancellare tabelle e campi. Il risultato finale sarà un semplice file con estensione .sdf. WebMatrix installa anche il nuovo SQL Server CE 4. Questa nuova versione di SQL Server CE offre nuove funzionalità: tra cui il supporto per l’utilizzo server-side di dababase in memoria, che gireranno appunto sul server in contesti altamente multi-threaded. Inoltre questo modello offre la semplicità di fare la copia del file sdf su un server sul quale non è necessarimanete richiesto di installare un DBMS per poter far funzionare l’applicazione. Potete ben immaginare come questo approccio sia adatto a soluzioni a basso traffico, ma in caso vogliate, potete poi migrare verso un prodotto che offra scalabilità maggiore e migrare il database direttamente da WebMatrix.
Per vedere come l’applicazione accede al database aprite il file Order.cshtml:
Come vedete per aprire la connessione al database basta usare l’API Database.Open e passare come parametro il nome del database, il resto è a carico di ASP.NET, non poteva essere più semplice di così. Vi ricordate, l’obiettivo di questo prodotto è la semplicità, e non la flessibilità di usare la strategia di accesso ai dati migliore, che spesso va a scapito della prima, ma che in altri contesti sarebbe un requisito irrinunciabile.
Ad ogni modo dalla request viene recuperato il parametro productId e poi viene eseguita una query tramite la chiamata .QuerySingle in cui mi aspetto venga ritornato un unico record dal database.
L’utima funzionalità che vi voglio mostrare di WebMatrix è la possibilità di fare analisi del sito relativamente alle problematiche di Search Engine Optimization (SEO). Queste analisi possono essere molto utili nel momento in cui vogliamo che il nostro sito sia visibile su internet.
Nel mio caso o fatto qualche modifica al sito, come rimuove il tag Title dall’ Header della pagina HTML, in questo caso:
In questo caso ho un report con warning ed errori veri propri, che mi avvertono di problemi in cui posso incorrere e che impediscono ad un motore di ricerca d’ indicizzare correttamente il sito. Cliccando sull’errore avrete anche maggiori dettagli:
Il nuovo WebMatrix è rivolto agli sviluppatori di siti web che cercano un modello semplice e lineare per integrare ad una pagina HTML/CSS/Javascript l’interazione e la dinamicità necessari al funzionamento di un sito web, lasciando però aperti gli occhi a sviluppi e modelli futuri...
ASP.NET si arricchisce di una nuova sintassi semplificata rivolta a chi parte sviluppando pagine HTML e successivamente aggiunge dinamicità. La nuova sintassi è lineare e semplice da imparare e fa uso di .NET, offrendo quindi un linguaggio compilato e strongly-type. Il nuovo View Engine viene usato per la prima volta con WebMatrix ma ne verrà esteso il funzionamento a Visual Studio 2010 e alla prossima versione di ASP.NET MVC in particolare ne costituirà una possibile scelta.
Inoltre come avete visto da poco sono disponibili IIS Express e SQL CE 4.0 in preview, strumenti che possiamo comunque pensare di utilizzare con Visual Studio 2010 e che verranno in seguito integrati.
Potete trovari una serie di post molto dettagliati su questi argomento sul blog di ScottGu qui, qui, qui e qui.
Potete scaricare WebMatrix e installarlo da qui.
Martedì prossimo nella sede Microsoft di Segrate(MI), si terrà un evento gratuito dedicato a SharePoint 2010. La mattina è dedicata agli sviluppatori e site builder ed il pomeriggio è dedicato agli IT Pro.
Potete consultare l’agenda sul sito di sharepointcommunity.it, redatta da Paolo e Igor ed i ragazzi della community, ed iscrivervi qui per la mattina dev e qui per il momeriggio IT Pro.
Spero di vedervi là.
La prossima settimana si terrà REMIX10. Ecco le mie sessioni:
In questa sessione cercherò di mettere in luce differenze, vantaggi e svantaggi di ASP.NET WebForm 4 e ASP.NET MVC2. In particolare vedremo come le webform sono evolute nell’ultima versione di .NET al fine di venire incontro ad alcune richieste da parte della community avvenute in passato, anche utilizzandole con moderni framework Javascript come jQuery. Vedremo invece il modello offerto da ASP.NET MVC, di come sia diverso, migliore o peggiore a seconda di alcune funzionalità che andremo a vedere durante la sessione. La sessione quindi non è su tutte le novità dell’ultima versione di ASP.NET MVC 2, per questa vi darò un link esaustivo, ma piuttosto su quelle funzionalità che possono far apprezzare o no questo modello.
Fiddler è un tool fantastico, che uso ormai da anni e che più volte mi è stato utile in diverse situazione “limite”, dalla misura delle performance di un sito fino a fare il debug di richieste e risposte http di siti già rilasciati e di cui per qualche ragione avevo bisogno di cambiare, sostituire parte delgli header o del body della richiesta per fare diagnostica. Mi è anche capitato di dover simulare la presenza di proxy autenticati, quando questi non erano presenti al fine di valutare il comportamento del mio sito. Fiddler è molto più di una developer toolbar, ma per il lavoro del day-by-day può essere utile la developer toolbar di IE8/IE9. Nella nuova versione è stata aggiunto anche un Network monitor con una doppia visualizzazione una con meno dettagli più utile per lo sviluppo su una intranet e una che offre tutti i dettagli per valutare cosa succedde in un sito su internet. Fatemi sapere quali sono le funzionalità che vi sono più utili per lo sviluppo web…
Le mie sessioni fanno parte della traccia what’s new, dedicata a sviluppatori o architetti. Tenete presente che quest’anno a REMIX ci sono ben 4 tracks con tagli diversi: Jump Start, dedicata a chi è agli inzi con la tecnologia Microsoft per il web, una traccia dedicata a Windows Phone 7, ed una dedicata a chi si occupa di offrire servizi di hosting.