SMAU Bologna e Community Tour 2011 – Windows Phone, HTML 5 e MVC

Giovedì 9 giugno 2011 nel contesto di SMAU Business alla Fiera di Bologna si terrà una nuova tappa del community tour organizzata da DotDotNet.

L’evento avrà come tema il presente ed il futuro del web con sessioni su Windows Phone 7, HTML 5 e MVC 3.

Mi è piacevolmente toccata la sessione su ASP.NET MVC 3 che considero un prodotto fondamentale per chiunque sviluppi su web applicazioni di una certa dimensione/durata.

Come al solito vi invito all’evento ed alla cena a seguire.

Agenda

Ora Sessione Speakers
13.45 – 14.00 Registrazione
14.00 – 14.45 Keynote – Presente e futuro del Web Microsoft Italia
14.45 – 15.45 Introduzione alla piattaforma Windows Phone

Windows Phone 7 ha introdotto un nuovo modo per intendere il telefono e una nuova piattaforma basata su hardware consistente, una piattaforma di sviluppo basata su Silverlight e XNA e un Marketplace con nuove opportunità di business.
In questa sessione vedremo come sviluppare su Windows Phone, come promuovere le proprie applicazioni tramite il marketplace e inoltre vedremo le moltissime novità della versione “Mango” che verrà rilasciata in autunno.

Lorenzo Barbieri
Microsoft Developer Evangelist
15.45 – 16.00 Pausa
16.00 – 17.00 Le novità di HTML5

HTML5 è il nuovo riferimento per lo sviluppo di siti e applicaizoni web based. In questa sessione vedremo come il nuovo standard può essere utilizzato per realizzare contenuti cross-browser e plugin-free ad alto impatto visuale.

Alessandro Scardova
Microsoft MVP, DotDotNet
17.00 – 18.00 ASP.NET MVC3

MVC favorisce la manutenzione delle applicazioni web tramite una architettura elegante ed una chiara ed esplicita separazione delle competenze, l’impiego dei più diffusi pattern di software engineering, il controllo completo dell’HTML generato e degli URL, la testabilità ed estendibilità. In questa sessione vedremo le novità principali della versione 3.

Stefano Benedetti
DotDotNet

Registrazione

Per registrarsi potete seguire questo link: http://dotdotnet.org/content/SmauBo2011.aspx

Share

log4net, il Framework .Net 4.0 e il Client Profile

Questa settimana un cliente mi ha segnalato un problema relativo all’utilizzo di log4net con Visual Studio 2010 e il Framework 4.0.

In pratica creando un’app

licazione console e referenziando log4net in versione 1.2.10 in fase di build si riceve questo errore:

“The referenced assembly “log4net” could not be resolved because it has a dependency on “System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” which is not in the currently targeted framework “.NETFramework,Version=v4.0,Profile=Client”. Please remove references to assemblies not in the targeted framework or consider retargeting your project.”

Come esplicitato d

al messaggio il problema risiede nel fatto che la console application targettizza il Framework 4 Client Profile.

Framework-Client-Profile

Il Client Profile è il target predefinito per i nuovi progetti Windows Forms, Console Application, WPF e Window Service. L’idea di base del Client Profile è quella di ridurre le dimensioni del Framework .Net rimuovendo tutte le assembly che in certi progetti non servono.
Nello specifico il client profile non contiene:

  • ASP.NET
  • alcune funzionalità avanzate di Windows Communication Foundation (WCF)
  • il .NET Framework Data Provider per Oracle
  • MSBuild
log4net utilizza l’assembly System.Web tramite l’AspNetTraceAppender e quindi non è possibile compilare i progetti che targettizzano il Framework 4 Client Profile.
La soluzione più rapida è quella di modificare le proprietà del progetto selezionando come target framework “.Net Framework 4”.
La domanda a questo punto però è: “E’ corretto scegliere come target il framework in versione full?”
Se la risposta fosse solo nelle dimensioni direi che si potrebbe utilizzare direttamente la versione full.
Queste sono le dimensioni del framework 4 come riportato sul blog di Scott Hanselman:
3.5 SP1 4.0 RTM
32 bit Client Profile Online: 28 MB
Offline: 255MB
28.8 MB
32 + 64 bit Client Profile N/A 41 MB
32 bit Full N/A 35.3 MB
32 + 64 bit Full N/A 48.1 MB
32 + ia64 bit Full N/A 51.7 MB
32 + 64 + ia64 bit Full 231 MB N/A

In pratica la differenza di dimensioni si attesta sui 7 mega quindi secondo me non sostanziale.

L’accento probabilmente va posto su due punti:

  • concettualmente gli applicativi desktop è corretto che non abbiano riferimenti ad assembly relative al mondo web
  • il Framework 4 Client Profile è il framework che viene distribuito sui desktop tramite Windows Update
In base a questi punti direi che si può targettizzare il framework full in ambienti ben controllati o enterprise e preferire il Client Profile per tutti gli applicativi desktop.
Per quanto riguarda log4net nello specifico nelle versioni future potrebbe essere rilasciata una build compatibile col client profile senza riferimenti a System.Web altrimenti è necessario ricompilarlo rimuovendo l’AspNetTraceAppender.
Riferimenti:

.NET Framework Client Profile
Towards a Smaller .NET 4 – Details on the Client Profile and Downloading .NET
What’s new in .NET Framework 4 Client Profile RTM

Share