<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://dotnetcampania.org/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>The Dark Side of .NET</title><link>http://dotnetcampania.org/blogs/michele/default.aspx</link><description>Il lato oscuro della forza!</description><dc:language>it</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Un altro anno da MVP</title><link>http://dotnetcampania.org/blogs/michele/archive/2012/01/02/un-altro-anno-da-mvp.aspx</link><pubDate>Mon, 02 Jan 2012 13:55:21 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1766</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1766</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2012/01/02/un-altro-anno-da-mvp.aspx#comments</comments><description>&lt;p align="justify"&gt;Anche quest’anno comincia con una bella notizia: sono stato riconfermato MVP nella categoria ASP.NET/IIS. Potete immaginare la mia felicità e anche quest’anno dedico questo traguardo ai ragazzi di &lt;a href="http://dotnetcampania.org/"&gt;DotNetCampania&lt;/a&gt; che lo hanno reso possibile. &lt;/p&gt;  &lt;p align="justify"&gt;Un grazie va a tutte le community italiane e ai vari lead con cui ho avuto il piacere di confrontarmi (spesso a tavola). Grazie per i preziosi consigli, le grande abbuffate e lo spirito di community che ci avete trasmesso.&lt;/p&gt;  &lt;p align="justify"&gt;Ringrazio di cuore anche &lt;a href="http://belead.me/"&gt;Alessandro Teglia&lt;/a&gt;, &lt;a href="http://www.geniodelmale.info/"&gt;Lorenzo Barbieri&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/b/pietrobr/"&gt;Pietro Brambati&lt;/a&gt; e tutti i componenti del team di &lt;a href="http://msdn.microsoft.com/it-it/"&gt;Microsoft&lt;/a&gt; che si occupano delle community per lo splendido lavoro che fanno (e per le bellissime ore passate insieme ai vari meeting).&lt;/p&gt;  &lt;p align="justify"&gt;Un grazie per i preziosi consigli e le esperienze vissute insieme anche ai fantastici ragazzi di &lt;a href="http://www.crionet.it/default.aspx?Lang=it"&gt;Crionet&lt;/a&gt; (in primis &lt;a href="http://giorgiogarcia.com/"&gt;Giorgio&lt;/a&gt;, &lt;a href="http://blogs.ugidotnet.org/dinoes/Default.aspx"&gt;Dino&lt;/a&gt;, Gaetano e Diego) con cui ho avuto il piacere di collaborare.&lt;/p&gt;  &lt;p align="justify"&gt;Un grazie finale ad Annamaria Criscuolo, titolare della &lt;a href="http://www.bcsoft.net/"&gt;Bc Soft Srl&lt;/a&gt;, per essere tra le poche persone che conosco che abbiano riconosciuto il valore di questo premio e ne abbiano fatto motivo di orgoglio per la propria azienda.&lt;/p&gt;  &lt;p align="justify"&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1766" width="1" height="1"&gt;</description></item><item><title>Installare Orchard su Azure</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/12/27/installare-orchard-su-azure.aspx</link><pubDate>Tue, 27 Dec 2011 17:36:35 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1764</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1764</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/12/27/installare-orchard-su-azure.aspx#comments</comments><description>&lt;p align="justify"&gt;Come spesso ho detto durante le sessioni su Orchard. questo CMS è installabile, oltre che su IIS di una macchina Windows, anche su server Linux utilizzando Mono o su Azure, utilizzando un apposito package. Proviamo quindi ad installare Orchard proprio su Azure, scaricando dalla pagina codeplex il package Azure:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1346.image_5F00_65ECCDE5.png"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2703.image_5F00_thumb_5F00_100C5601.png" width="355" height="311" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a title="http://orchard.codeplex.com/releases/view/59918" href="http://orchard.codeplex.com/releases/view/59918"&gt;http://orchard.codeplex.com/releases/view/59918&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Questo package contiene due file: il Service Package File, contenente l’applicazione, e il Service Configuration File, contenente i parametri di configurazione dell’applicazione. L’unica cosa che dobbiamo fare è specificare in quest’ultimo file la stringa di conessione ad un database di un’istanza Sql Azure opportunamente creata nella nostra sottoscrizione Azure. Procediamo quindi alla configurazione di Azure in modo che possa ospitare la nostra installazione di Orchard. Per chi non conoscesse benissimo come funziona Azure, è possibile far riferimento al tantissimo materiale presente on line o (come me) al fantastico &lt;a href="http://www.fag.it/scheda.aspx?ID=38851"&gt;libro di Fabio Cozzolino&lt;/a&gt;.&lt;/p&gt;  &lt;p align="justify"&gt;Come possessore di una MSDN Ultimate ho quindi attivato la mia sottoscrizione Azure e non ho fatto altro che accedere al pannello di gestione della mia sottoscrizione: &lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7674.image_5F00_14A260BB.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3644.image_5F00_thumb_5F00_45454299.png" width="541" height="281" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Cliccando sulla voce HostedServices, Storage Accounts &amp;amp; CDN vengono visualizzati i servizi Azure attivi (nel mio caso nessuno), ho quindi selezionato gli account di Storage, selezionato la mia sottoscrizione, tasto destro –&amp;gt; New Storage Account.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1856.image_5F00_60BA1ECF.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4682.image_5F00_thumb_5F00_64E3F694.png" width="545" height="417" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Una finestra di popup ci chiede i dati con cui vogliamo creare l’account:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6327.image_5F00_51FF4D1D.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7140.image_5F00_thumb_5F00_70D5C0FB.png" width="547" height="323" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Dopo qualche minuto ecco il nostro storage account creato:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1778.image_5F00_2E1675C3.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5277.image_5F00_thumb_5F00_0D23031C.png" width="546" height="126" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;A questo punto creiamo un nuovo Server selezionando dalla ribbon il pulsante Create che compare selezionando la voce Database dal menu laterale:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8738.image_5F00_39CBBCF5.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2352.image_5F00_thumb_5F00_5E10A177.png" width="550" height="600" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;E completiamo il wizard che ci chiede la region, l’account di amministrazione e le regole di accesso del firewall:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2425.image_5F00_497B2C2C.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6747.image_5F00_thumb_5F00_501E0FE2.png" width="559" height="164" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p align="justify"&gt;A questo punto è stato creato il server Sql Azure in cui possiamo creare un nostro database semplicemente selezionando il nome del server e cliccando sul pulsante Create dalla ribbon:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0447.image_5F00_654C158A.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2055.image_5F00_thumb_5F00_5C0FDA49.png" width="549" height="274" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Parte il solito wizard che ci chiede i dati necessari alla creazione del database:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8015.image_5F00_101453D0.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3730.image_5F00_thumb_5F00_2DA62ECF.png" width="546" height="300" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Una volta creato il database dobbiamo costruire la stringa di connessione da mettere nel file di configurazione del nostro package, stringa che possiamo recuperare cliccando su Connection Strings nel pannello delle proprietà del nostro database. Selezionando quindi il database appena creato (orcharddb nel nostro caso), dal pannello delle proprietà clicchiamo sul pulsante con i tre puntini sospensivi della voce ConnectionStrings. Selezioniamo e copiamo la stringa di tipo ADO.Net. Chiaramente, per motivi di sicurezza, la password non è indicata, va quindi inserita manualmente nella stringa.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1057.image_5F00_02BDA4F0.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7534.image_5F00_thumb_5F00_204F7FEF.png" width="553" height="253" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Apriamo il ServiceConfiguration.cscfg e modifichiamo il value del Setting DataConnectionString con il valore copiato:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5008.image_5F00_21F025F6.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1452.image_5F00_thumb_5F00_1B2CF6A6.png" width="560" height="168" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Salviamo e siamo pronti a deployare il nostro pacchetto! Selezionando di nuovo Hosted Services, Storage Accounts &amp;amp; CDN, clicchiamo su Hosted Services e clicchiamo sul pulsante New Hosted Service presente nella ribbon:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6153.image_5F00_43E85BEF.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6825.image_5F00_thumb_5F00_07DC1A3A.png" width="564" height="594" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Diamo un nome e un url al nostro servizio, scegliamo la solita region, diamo un nome al deploy e selezioniamo il package e il configuration file:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1651.image_5F00_51E6FF52.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7343.image_5F00_thumb_5F00_75537DEA.png" width="565" height="595" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Un warning ci avvisa che sarebbe meglio, per la disponibilità del servizio, avere due istanze per ruolo, ma dati gli scopi al momento lasciamo tutto così e andiamo avanti:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6431.image_5F00_44241D7D.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5852.image_5F00_thumb_5F00_49928E21.png" width="571" height="451" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Dopo qualche minuto il nostro Service è pronto:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4214.image_5F00_76E3FE24.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3463.image_5F00_thumb_5F00_7C526EC8.png" width="576" height="173" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Possiamo quindi vedere quanto realizzato:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1134.image_5F00_2C99437F.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1121.image_5F00_thumb_5F00_0E8B0FBE.png" width="581" height="302" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Specifichiamo come database Sql Server indicando la stringa di connessione:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3276.image_5F00_1A4056F0.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7713.image_5F00_thumb_5F00_2776BA36.png" width="589" height="306" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Ottenendo il risultato sperato:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2437.image_5F00_5E04657A.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2844.image_5F00_thumb_5F00_1C798D54.png" width="593" height="308" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;A mio modesto parere: una passeggiata! Azure è semplicissimo, perchè molto intuitivo, da configurare e il package di Orchard è praticamente pronto all’uso. Qualche problemino chiaramente lo incontreremo nell’installazione dei moduli a causa dei permessi sui singoli elementi dell’applicazione, ma nei prossimi post vedremo come risolvere anche quelli.&lt;/p&gt;  &lt;p align="justify"&gt;-- Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1764" width="1" height="1"&gt;</description><category domain="http://dotnetcampania.org/blogs/michele/archive/tags/Orchard/default.aspx">Orchard</category></item><item><title>Community Days 2012 - Milano, 16 e 17 febbraio 2012</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/12/21/community-days-2012-milano-16-e-17-febbraio-2012.aspx</link><pubDate>Tue, 20 Dec 2011 23:36:09 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1756</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1756</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/12/21/community-days-2012-milano-16-e-17-febbraio-2012.aspx#comments</comments><description>&lt;p&gt;Siete pronti a non perdervi il maggiore evento community italiano organizzato dagli user group e community italiani legati ai temi dello sviluppo basato sul .NET Framework?   &lt;br /&gt;Due giorni, 12 track, 4 lab ed i migliori speaker: iscriviti subito ai Community Days 2012!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.communitydays.it/events/communitydays-2012/"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="600x220" border="0" alt="600x220" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3513.600x220_5F00_234077FD.png" width="518" height="192" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.communitydays.it/events/communitydays-2012/"&gt;http://www.communitydays.it/events/communitydays-2012/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1756" width="1" height="1"&gt;</description></item><item><title>Domani parte WPC</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/11/21/domani-parte-wpc.aspx</link><pubDate>Mon, 21 Nov 2011 12:37:40 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1733</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1733</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/11/21/domani-parte-wpc.aspx#comments</comments><description>&lt;p&gt;Domani, 22 Novembre 2011, parte WPC2011, a cui ho l’onore di partecipare come speaker. Mi trovate nella Sala Rossa alle 18.45 a parlare di sviluppo di siti web con Orchard, il CMS targato Microsoft. Sarò presente tutti e 3 giorni dell’evento, in giro per sessioni e al CafèTech, l’angolo dove troverete tanti MVP a rispondere alle vostre domande e a scambiare quattro chiacchiere sul futuro delle nostre e vostre tecnologie preferite&lt;a href="http://www.wpc2011.it/"&gt;&lt;img style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:block;float:none;border-top-width:0px;border-bottom-width:0px;margin-left:auto;border-left-width:0px;margin-right:auto;padding-top:0px;" title="wpc" border="0" alt="wpc" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8473.wpc_5F00_5C71F0BC.jpg" width="445" height="157" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Sei track e tantissime sessioni da seguire, gli eventi serali, il CaféTech e tanto altro! Maggiori info sul sito dell’evento: &lt;a title="http://www.wpc2011.it/" href="http://www.wpc2011.it/"&gt;http://www.wpc2011.it/&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Vi aspettiamo!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1733" width="1" height="1"&gt;</description></item><item><title>History Tech Day e DDD Day</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/10/07/history-tech-day-e-ddd-day.aspx</link><pubDate>Fri, 07 Oct 2011 07:23:30 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1704</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1704</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/10/07/history-tech-day-e-ddd-day.aspx#comments</comments><description>&lt;p align="justify"&gt;Purtroppo il poco tempo a disposizione mi sta un po’ limitando nei post, ma ci tenevo, anche se in ritardo, a ringraziare pubblicamente i partecipanti, gli speaker e gli organizzatori dell’History Tech Day, una delle giornate dell’evento Comunicando, organizzato da &lt;a href="http://www.storiainformatica.it/"&gt;Storia Informatica&lt;/a&gt;,&amp;#160; tenutosi ad Avellino lo scorso 24 Settembre. Potete trovare il materiale all’indirizzo:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://www.storiainformatica.it/index.php?option=com_content&amp;amp;view=article&amp;amp;id=232&amp;amp;Itemid=97&amp;amp;lang=it"&gt;&lt;img style="display:block;float:none;margin-left:auto;margin-right:auto;" title="History Day" border="0" alt="History Day" src="http://www.storiainformatica.it/images/stories/comunicando/tech_day.png" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a title="http://www.storiainformatica.it/index.php?option=com_content&amp;amp;view=article&amp;amp;id=232&amp;amp;Itemid=97&amp;amp;lang=it" href="http://www.storiainformatica.it/index.php?option=com_content&amp;amp;view=article&amp;amp;id=232&amp;amp;Itemid=97&amp;amp;lang=it"&gt;http://www.storiainformatica.it/index.php?option=com_content&amp;amp;view=article&amp;amp;id=232&amp;amp;Itemid=97&amp;amp;lang=it&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Un grazie di cuore agli amici MVP che sono intervenuti: l’ormai napoletano&amp;#160; &lt;a href="http://www.robertofreato.com/"&gt;Roberto Freato&lt;/a&gt;, presidente di &lt;a href="http://dotnetlombardia.org/"&gt;DotNetLombardia&lt;/a&gt;, che ci ha parlato dell’evoluzione dei sistemi mobile, l’amico e roomate di sempre &lt;a href="http://codetailor.blogspot.com/"&gt;Massimo Bonanni&lt;/a&gt;, presidente di &lt;a href="http://www.domusdotnet.org/"&gt;DomusDotNet&lt;/a&gt;,&amp;#160; che ci ha parlato dell’evoluzione degli ambienti di sviluppo Microsoft (ah, quanti ricordi…) e ultimo, solo in ordine di apparizione, il mitico &lt;a href="http://dotnetside.org/blogs/fabio/"&gt;Fabio Cozzolino&lt;/a&gt;, presidente di &lt;a href="http://dotnetside.org/"&gt;DotNetSide&lt;/a&gt;, che ci regalato uno splendido viaggio nelle soluzioni di cloud computing. Grazie di cuore ragazzi, ancora una volta lo spirito di community che vi contraddistingue ha reso un sabato qualsiasi una giornata da ricordare.&lt;/p&gt;  &lt;p align="justify"&gt;Ma come sempre non ci fermiamo mai e il prossimo appuntamento è domani, 8 Ottobre, a Bologna, dove insieme a &lt;a href="http://dotdotnet.org/"&gt;DotDotNet&lt;/a&gt;, &lt;a href="http://dotnetmarche.org/"&gt;DotNetMarche&lt;/a&gt;, &lt;a href="http://www.ugidotnet.org/"&gt;UgiDotNet&lt;/a&gt; e &lt;a href="https://groups.google.com/group/marche-xpug?hl=it&amp;amp;pli=1"&gt;XPUG Marche&lt;/a&gt;, abbiamo organizzato una giornata completamente dedicata al Domain Driven Design: il &lt;a href="http://www.ddd-day.it/"&gt;DDD Day&lt;/a&gt;!&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://www.ddd-day.it/"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" border="0" alt="DDD Day 2011" src="http://evbdn.eventbrite.com/s3-s3/eventlogos/16982771/1870740435-3.png" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;L’appuntamento è all&amp;#39;Hotel Sheraton di Bologna, dove vi aspetteranno, per una giornata ricca di contenuti, speaker nazionali e internazionali come Alberto Brandolini, Greg Young, Andrea Saltarello e tanti altri in due track parallele tra cui scegliere le sessioni. Sul sito trovate tutte le informazioni necessarie. I campani che saranno all’evento possono trovarci in giro per le sessioni (chiedete alle ragazze all’accoglienza o al banchetto dello sponsor Novatech Consulting). Un consiglio da chi ha avuto la fortuna di essere nello staff organizzativo ed ha vissuto il dietro le quinte: NON PERDETEVI QUESTO EVENTO!&lt;/p&gt;  &lt;p align="justify"&gt;A domani&lt;/p&gt;  &lt;p align="justify"&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1704" width="1" height="1"&gt;</description></item><item><title>Sabato prossimo History Tech Day ad Avellino: non mancate!</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/09/22/sabato-prossimo-history-tech-day-ad-avellino-non-mancate.aspx</link><pubDate>Thu, 22 Sep 2011 14:18:01 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1692</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1692</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/09/22/sabato-prossimo-history-tech-day-ad-avellino-non-mancate.aspx#comments</comments><description>&lt;p align="justify"&gt;Sabato prossimo DotNetCampania è ad Avellino insieme a Storia Informativa è un bel po’ di amici MVP per una giornata dedicata all’evoluzione dei sistemi informatici. Questo il link dell’evento:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.storiainformatica.it/index.php?option=com_content&amp;amp;view=article&amp;amp;id=232&amp;amp;Itemid=97&amp;amp;lang=it"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="banner_comunicando_piccolo" border="0" alt="banner_comunicando_piccolo" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0181.banner_5F00_comunicando_5F00_piccolo_5F00_05445778.jpg" width="243" height="244" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Sarà un bella occasione per parlare di tecnologia, del passato, ma anche del futuro e come sempre stare insieme in un paese in cui il buon cibo non manca….&lt;/p&gt;  &lt;p&gt;Vi aspettiamo!&lt;/p&gt;  &lt;p&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1692" width="1" height="1"&gt;</description></item><item><title>Orchard: impostare la favicon</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/09/20/orchard-impostare-la-favicon.aspx</link><pubDate>Tue, 20 Sep 2011 21:50:40 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1688</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1688</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/09/20/orchard-impostare-la-favicon.aspx#comments</comments><description>&lt;p align="justify"&gt;Se lavorate con Orchard sapete bene che la modularità è una delle caratteristiche fondamentali di questo CMS. Esiste un modulo per tutte le principali attività di realizzazione di un sito web, e la favicon, l’iconcina associata al sito, non è da meno! Vi basta quindi andare nella gallery dei moduli (Modules –&amp;gt; Gallery), cercare con la parola chiave ‘favicon’ e installare il Vandelay Favicon.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5037.image_5F00_732A2104.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6507.image_5F00_thumb_5F00_3EA94EBC.png" width="532" height="235" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Come sempre ricordatevi di attivare il modulo:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3326.image_5F00_48419725.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1220.image_5F00_thumb_5F00_125CA20B.png" width="531" height="230" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;A questo punto nei settaggi generali (Settings –&amp;gt; General) vi ritroverete un sezione apposita in cui potete specificare la vostra favicon:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2211.image_5F00_03D18019.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2021.image_5F00_thumb_5F00_74BAA13E.png" width="534" height="262" /&gt;&lt;/a&gt;&lt;/p&gt;        &lt;p align="justify"&gt;Creiamo nella cartella Media una cartella Favicon in cui inseriremo le immagini tra cui scegliere la nostra favicon:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8512.image_5F00_32D3BBF0.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4426.image_5F00_thumb_5F00_65FFCF8C.png" width="534" height="521" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Le immagini presenti in questa cartella saranno disponibili nella sezione appena aggiunta per la favicon per una più semplice selezione, basta cliccarci su!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7802.image_5F00_2F61FE7B.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3835.image_5F00_thumb_5F00_6EBFB20B.png" width="515" height="245" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Ecco il risultato, di cui approfitto per invitarvi il prossimo 8 ottobre a bologna al &lt;a href="http://www.ddd-day.it/"&gt;DDD Day&lt;/a&gt;, una giornata completamente gratuita dedicata al Domain Driven Design, di cui &lt;a href="http://dotnetcampania.org/"&gt;DotNetCampania&lt;/a&gt; è co-organizzatrice. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1538.image_5F00_6D7B192C.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7142.image_5F00_thumb_5F00_5DF8075D.png" width="530" height="74" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p align="justify"&gt;Il sito, come potete immaginare, è realizzato con Orchard, mentre l’elegantissimo design è frutto del lavoro del nostro &lt;a href="http://www.carminealfano.it/"&gt;Carmine&lt;/a&gt;!&lt;/p&gt;  &lt;p&gt;-- Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1688" width="1" height="1"&gt;</description><category domain="http://dotnetcampania.org/blogs/michele/archive/tags/Orchard/default.aspx">Orchard</category></item><item><title>Creare un modulo per Orchard: preparare l’ambiente di sviluppo</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/08/29/creare-un-modulo-per-orchard-preparare-l-ambiente-di-sviluppo.aspx</link><pubDate>Mon, 29 Aug 2011 18:13:26 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1677</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1677</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/08/29/creare-un-modulo-per-orchard-preparare-l-ambiente-di-sviluppo.aspx#comments</comments><description>&lt;p align="justify"&gt;Come già detto più volte Orchard è un CMS che fa della modularità il suo punto di forza, con una gallery ormai già molto nutrita che vi permette di risolvere quasi tutti i casi di sviluppo reale che vi possono capitare. Ma se nella gallery non c’è il modulo che vi serve? Se siete dei DEV .NET, niente paura, anzi: è arrivato il momento di &lt;a href="http://orchard.codeplex.com/releases/65184/download/249651"&gt;scaricare i sorgenti di Orchard&lt;/a&gt; da Codeplex e avviare il vostro fido Visual Studio 2010!&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1462.image_5F00_435AE3FB.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8561.image_5F00_thumb_5F00_3C97B4AB.png" width="533" height="377" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Una volta scaricato il pacchetto zip, decomprimetelo in una cartella a vostro piacimento e nella sottocartella &lt;em&gt;src&lt;/em&gt; fate doppio click sulla Microsoft Visual Studio Solution chiamata Orchard:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5126.image_5F00_2946D83F.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8032.image_5F00_thumb_5F00_6B89CAB5.png" width="536" height="332" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Chiudendo un po’ di rami della soluzione, il solution explorer vi presenterà la seguente struttura, con la quale familiarizzeremo nel corso di questi articoli:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7331.image_5F00_2CF45742.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7266.image_5F00_thumb_5F00_7E2E9E9F.png" width="291" height="354" /&gt;&lt;/a&gt;&lt;/p&gt;      &lt;p align="justify"&gt;Come avremo modo di approfondire analizzando l’architettura interna di questo CMS, i principali componenti della soluzione sono la Core Library, che implementa le funzionalità base del sistema, e il Framework di Orchard che, utilizzando le funzionalità della Core Library, offre servizi di base ai moduli che troverete nella cartella Modules.&amp;#160; &lt;/p&gt;  &lt;p align="justify"&gt;Compiliamo e lanciamo la soluzione per assicurarci che tutto funzioni, dopodichè creiamo un sito di test per la realizzazione del nostro modulo, utilizzando come &lt;em&gt;recipe&lt;/em&gt; di creazione del sito proprio il&lt;em&gt;Core&lt;/em&gt;, in modo da avere un ambiente con il minimo indispensabile per poter lavorare.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4135.image_5F00_68180D40.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0447.image_5F00_thumb_5F00_134C7E7B.png" width="469" height="585" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Questo template crea un ambiente davvero minimale, che è perfetto per testare i nostri moduli:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0714.image_5F00_7C5D8731.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7028.image_5F00_thumb_5F00_3859A31A.png" width="457" height="278" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;L’ambiente core così creato installa automaticamente il modulo Code Generation, già usato in passato per generare i temi, e che ci permette anche di generare un modulo vuoto per Orchard in modo da non dover partire proprio da zero. Ci basta avviare la console di Orchard che troviamo nella cartella bin del web project (Orchard.Web) facendo doppio click sull’application di nome Orchard:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6102.image_5F00_7B74FB7A.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6237.image_5F00_thumb_5F00_766297FE.png" width="459" height="285" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Il modulo è installato ma non attivato, per attivarlo ci basta digitare il comando &lt;/p&gt;  &lt;p&gt;&lt;em&gt;feature enable Orchard.CodeGeneration&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;se tutto va a buon fine la console ci risponde con il messaggio Code Generation was enabled:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5756.image_5F00_10FF0E4B.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2570.image_5F00_thumb_5F00_00A39692.png" width="463" height="146" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Volendo potevamo attivare il modulo anche dalla dashboard, così come tutti gli altri moduli di Orchard. Una volta attivato il modulo di generazione del codice ci basta richiamarlo con il seguente comando:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;em&gt;codegen module CommunityEventManager&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;dove CommunityEventManager è il nome che vogliamo dare al nostro modulo. Il messaggio Module CommunityEventManager created successfully ci notificherà la corretta esecuzione del comando:&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8321.image_5F00_6C3DD106.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5518.image_5F00_thumb_5F00_0F3E1CAA.png" width="465" height="146" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Il modulo, oltre ad essere creato, viene automaticamente aggiunto alla nostra solution, infatti passando a Visual Studio l’ambiente ci chiede se vogliamo ricaricare la solution, in quanto è stata modificata al di fuori dell’ambiente:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0844.image_5F00_37F981F3.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2806.image_5F00_thumb_5F00_4BA66B87.png" width="471" height="142" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Una volta ricaricata la soluzione, nella cartella Modules troveremo il nostro modulo:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5305.image_5F00_7BED403D.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="image" border="0" alt="image" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0878.image_5F00_thumb_5F00_6FEB5009.png" width="305" height="417" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Siamo quindi pronti a scrivere il codice necessario a implementare il nostro modulo, ma prima abbiamo bisogno di analizzare un po’ più del dettaglio come Orchard funziona dietro le quinte e quali tecnologie usa, cosa che faremo nei prossimo post.&lt;/p&gt;  &lt;p align="justify"&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1677" width="1" height="1"&gt;</description></item><item><title>Orchard: categorizzare contenuti con le tassonomie</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/08/26/orchard-categorizzare-contenuti-con-le-tassonomie.aspx</link><pubDate>Fri, 26 Aug 2011 10:41:00 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1675</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1675</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/08/26/orchard-categorizzare-contenuti-con-le-tassonomie.aspx#comments</comments><description>&lt;p align="justify"&gt;Rifacendo il sito di DotNetCampania utilizzando Orchard ci siamo scontrati con l&amp;rsquo;esigenza di categorizzare i contenuti che pubblichiamo, ad esempio gli articoli, per i quali abbiamo creato un apposito Content Type.&lt;/p&gt;
&lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5481.image_5F00_2D38E3A5.png"&gt;&lt;img height="332" width="536" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6215.image_5F00_thumb_5F00_2DD17402.png" alt="image" border="0" title="image" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Il modo pi&amp;ugrave; indicato per ottenere questo risultato &amp;egrave; sicuramente l&amp;rsquo;uso del modulo Taxonomies, installabile direttamente dalla gallery di moudli raggiungibile dalla dashboard:&lt;/p&gt;
&lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0676.image_5F00_16E27CB9.png"&gt;&lt;img height="367" width="539" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1346.image_5F00_thumb_5F00_6B0202FC.png" alt="image" border="0" title="image" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Come tutti i moduli di Orchard ricordatevi che va attivato:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1106.image_5F00_54EB719D.png"&gt;&lt;img height="230" width="501" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3414.image_5F00_thumb_5F00_060AAC3E.png" alt="image" border="0" title="image" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Come potete leggere sulla &lt;a href="http://orchardtaxonomies.codeplex.com/"&gt;pagina codeplex del modulo&lt;/a&gt;, una tassonomia &amp;egrave; un insieme gerarchico di termini che serve a classificare contenuti. L&amp;rsquo;installazione del modulo comporter&amp;agrave; l&amp;rsquo;installazione di un nuovo Field, denominato TaxonomyField, da aggiungere ai Content Type che vogliamo classificare, e una widget, chiamata Taxonomy Widget, che ci servir&amp;agrave; a mostrare all&amp;rsquo;utente la gerarchia dei termini che classificano i nostri contenuti. &lt;/p&gt;
&lt;p align="justify"&gt;Dal menu principale della Dashboard possiamo adesso creare le nostre tassonomie cliccando sulla voce Taxonomies e successivamente sul pulsante Add a taxonomy. A questo punto non dobbiamo far altro che dare un nome alla tassonomia:&lt;/p&gt;
&lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2275.image_5F00_35791B0A.png"&gt;&lt;img height="395" width="503" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3157.image_5F00_thumb_5F00_6071090F.png" alt="image" border="0" title="image" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Una volta creata la tassonomia possiamo aggiungere dei termini al suo vocabolario, organizzandoli, volendo, anche gerarchicamente. Nel nostro caso abbiamo creato alcune categorie per gli articoli:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3343.image_5F00_34FCC248.png"&gt;&lt;img height="704" width="505" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1033.image_5F00_thumb_5F00_4C6750AC.png" alt="image" border="0" title="image" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Dopo il primo termine del vocabolario, al fine di permettere l&amp;rsquo;organizzazione gerarchica degli elementi, l&amp;rsquo;aggiunta di un nuovo termine &amp;egrave; preceduta dalla scelta del termine padre, che pu&amp;ograve; chiaramente essere lasciato anche vuoto:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3250.image_5F00_5A7619DC.png"&gt;&lt;img height="130" width="507" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6102.image_5F00_thumb_5F00_20F309E5.png" alt="image" border="0" title="image" style="background-image:none;border-right-width:0px;padding-left:0px;padding-right:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A questo punto non ci resta che aggiungere al nostro content type Article un field di tipo TaxonomyField, che chiameremo Categorie.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1462.image_5F00_32636ABD.png"&gt;&lt;img height="238" width="496" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2210.image_5F00_thumb_5F00_318B04D3.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Possiamo indicare quale tassonomia usare tra quelle presenti , se restringere ai nodi figli la selezionalibit&amp;agrave; dei termini e se permettere un solo elemento del vocaboalario per articolo:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1067.image_5F00_3765A86C.png"&gt;&lt;img height="161" width="495" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8664.image_5F00_thumb_5F00_76C35BFC.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Modificando un qualsiasi articolo esistente o creandone uno nuovo possiamo adesso selezionare le categorie a cui associarlo:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8311.image_5F00_5BAA8CEE.png"&gt;&lt;img height="233" width="499" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8345.image_5F00_thumb_5F00_2CE4D44C.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Automaticamente la tassonomia sar&amp;agrave; presente nella lista articoli del fronend:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0358.image_5F00_39DEB45D.png"&gt;&lt;img height="342" width="501" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4532.image_5F00_thumb_5F00_3F89A836.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Tornando alla dashboard possiamo aggiungere una widget da cui selezionare le categorie di articoli. Clicchiamo su Widgets, aggiungiamo un layer per gli articoli in modo da aggiungere la widget solo alla pagina con l&amp;rsquo;url &amp;lsquo;~/articoli&amp;rsquo;&amp;nbsp; e clicchiamo sul pulsante Add della sezione AsideFirst per mostrare la widget nella colonna sinistra della nostra pagina:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6355.image_5F00_2FB9ED65.png"&gt;&lt;img height="268" width="506" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7563.image_5F00_thumb_5F00_001BCED9.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Scegliamo come tipologia di widget la Taxonomy Widget installata con il modulo Taxonomies:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7266.image_5F00_52BA3908.png"&gt;&lt;img height="275" width="508" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2337.image_5F00_thumb_5F00_0AF8B021.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;E selezioniamo la tassonomia che ci interessa mostrare:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8637.image_5F00_70B846FC.png"&gt;&lt;img height="442" width="298" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1134.image_5F00_thumb_5F00_73EA2EE4.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Ed ecco il risultato:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2664.image_5F00_4E803B76.png"&gt;&lt;img height="359" width="499" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3323.image_5F00_thumb_5F00_54976244.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Peccato che cliccando su una delle categoria dalla widget o anche dai link presenti nella lista degli articoli otteniamo una pagina vuota:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2627.image_5F00_258500A0.png"&gt;&lt;img height="144" width="497" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1538.image_5F00_thumb_5F00_2FD62500.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Questo perch&amp;egrave; di default Orchard non installa i moduli di indicizzazione dei contenuti, nella fattispecie l&amp;rsquo;implementazione disponibile dalla gallery &amp;egrave; &lt;a href="http://incubator.apache.org/lucene.net/"&gt;Lucene&lt;/a&gt; di cui parleremo in un apposito articolo. Ci basta quindi installare e attivare Lucene dalla Gallery e tornare al TaxonomyField creato nel content type Article per includere la tassomonia tra gli indici:&lt;/p&gt;
&lt;p align="justify"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5314.image_5F00_4EAC98DE.png"&gt;&lt;img height="231" width="323" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1325.image_5F00_thumb_5F00_3BF79F27.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Ottenendo il risultato voluto:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4336.image_5F00_27FE0C91.png"&gt;&lt;img height="358" width="489" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2867.image_5F00_thumb_5F00_4306B5D2.png" alt="image" border="0" title="image" style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Vi lascio con un link ad un video di &lt;a href="http://weblogs.asp.net/bleroy/default.aspx"&gt;Bertrand Le Roy&lt;/a&gt;, PM di Orchard, che mostra proprio come usare le tassonomie: &lt;a href="http://www.youtube.com/watch?v=B3jhgTeiEtw&amp;amp;feature=player_embedded"&gt;http://www.youtube.com/watch?v=B3jhgTeiEtw&amp;amp;feature=player_embedded&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-- Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1675" width="1" height="1"&gt;</description><category domain="http://dotnetcampania.org/blogs/michele/archive/tags/Orchard/default.aspx">Orchard</category></item><item><title>Community Day su MVC3 e Orchard</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/07/11/community-day-su-mvc3-e-orchard.aspx</link><pubDate>Mon, 11 Jul 2011 15:33:52 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1640</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1640</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/07/11/community-day-su-mvc3-e-orchard.aspx#comments</comments><description>&lt;p align="justify"&gt;Ultimo Community Day prima delle vacanze: si parla di Asp.Net MVC3 (mattina) e Orchard (pomeriggio). Questa volta tocca a me fare da speaker ed è sempre un grande piacere poter contribuire a queste giornate. &lt;/p&gt;  &lt;p align="justify"&gt;Il programma della giornata:&lt;/p&gt;  &lt;p align="justify"&gt;10.00 – 11.30: Introduzione ad Asp.Net MVC3 e Razor&lt;/p&gt;  &lt;p align="justify"&gt;11.30 – 11.45: Assaggio di dolci tipici della regione Campania&lt;/p&gt;  &lt;p align="justify"&gt;11.45 - 13.00: Estendibilità di Asp.Net MVC3, Testing e Best Practices&lt;/p&gt;  &lt;p align="justify"&gt;13.00 – 14.00: Alla scoperta della vera pizza napoletana&lt;/p&gt;  &lt;p align="justify"&gt;14.00 – 15.30: Creare siti web con Orchard&lt;/p&gt;  &lt;p align="justify"&gt;15.30 – 15.45: Assaggio di quel che è rimasto dei dolci tipici della regione Campania…&lt;/p&gt;  &lt;p align="justify"&gt;15.45 – 17.00: Creare un modulo per Orchard&lt;/p&gt;  &lt;p align="justify"&gt;L’appuntamento è per Sabato 16 Luglio 2011, ore 10.00, presso la sede dell’azienda QT2000, in via Arno 36 (Parco Alkaid), 80126 Napoli, e sono invitati tutti i soci di DotNetCampania. Non sei ancora socio? &lt;a href="http://dotnetcampania.org/content/Aderisci.aspx"&gt;Cosa aspetti&lt;/a&gt;?&lt;/p&gt;  &lt;p align="justify"&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1640" width="1" height="1"&gt;</description><category domain="http://dotnetcampania.org/blogs/michele/archive/tags/Eventi/default.aspx">Eventi</category></item><item><title>Orchard, stylesheet alternativo</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/07/01/orchard-stylesheet-alternativo.aspx</link><pubDate>Fri, 01 Jul 2011 16:40:15 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1629</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1629</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/07/01/orchard-stylesheet-alternativo.aspx#comments</comments><description>&lt;p align="justify"&gt;Nella realizzazione di web site può essere necessario selezionare uno stylesheet diverso in base ad alcune condizioni. Prendiamo ad esempio il caso in cui è necessario utilizzare un css diverso in base alla versione di explorer che sta visualizzando il nostro website (come mi è capitato in questi giorni impaginando un sito con Orchard). Possiamo usare i commenti condizionali di IE&lt;/p&gt;  &lt;pre class="csharpcode"&gt;&lt;span class="rem"&gt;&amp;lt;!--[if IE 6]&amp;gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;style.ie6.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot; /&amp;gt;&amp;lt;![endif]--&amp;gt;&lt;/span&gt;
&lt;span class="rem"&gt;&amp;lt;!--[if IE 7]&amp;gt;&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; href=&amp;quot;style.ie7.css&amp;quot; type=&amp;quot;text/css&amp;quot; media=&amp;quot;screen&amp;quot; /&amp;gt;&amp;lt;![endif]--&amp;gt;&lt;/span&gt;&lt;/pre&gt;


&lt;p align="justify"&gt;In Orchard possiamo ottenere questo risultato in questo modo:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;RegisterLink(&lt;span class="kwrd"&gt;new&lt;/span&gt; LinkEntry 
{ 
    Condition = &lt;span class="str"&gt;&amp;quot;lte IE 6&amp;quot;&lt;/span&gt;, 
    Rel = &lt;span class="str"&gt;&amp;quot;stylesheet&amp;quot;&lt;/span&gt;, 
    Type=&lt;span class="str"&gt;&amp;quot;text/css&amp;quot;&lt;/span&gt;, 
    Href = Href(&lt;span class="str"&gt;&amp;quot;../Styles/style.ie6.css&amp;quot;&lt;/span&gt;)
}.AddAttribute(&lt;span class="str"&gt;&amp;quot;media&amp;quot;&lt;/span&gt;, &lt;span class="str"&gt;&amp;quot;screen&amp;quot;&lt;/span&gt;));&lt;/pre&gt;


&lt;p&gt;Ricordandoci però di includere nella pagina cshtml le risorse per la UI di orchard:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;@&lt;span class="kwrd"&gt;using&lt;/span&gt; Orchard.UI.Resources;&lt;/pre&gt;


&lt;p&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1629" width="1" height="1"&gt;</description></item><item><title>Aperte le iscrizioni al DDD Day</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/06/30/aperte-le-iscrizioni-al-ddd-day.aspx</link><pubDate>Thu, 30 Jun 2011 07:58:17 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1627</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1627</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/06/30/aperte-le-iscrizioni-al-ddd-day.aspx#comments</comments><description>&lt;p&gt;Ecco il link per registrarvi:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://d4d-2011.eventbrite.com/" href="http://d4d-2011.eventbrite.com/"&gt;http://d4d-2011.eventbrite.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1627" width="1" height="1"&gt;</description></item><item><title>Creare un sito con Orchard - 3 parte</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/06/30/creare-un-sito-con-orchard-3-parte.aspx</link><pubDate>Thu, 30 Jun 2011 07:05:09 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1625</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1625</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/06/30/creare-un-sito-con-orchard-3-parte.aspx#comments</comments><description>&lt;p&gt;E’ disponibile sul sito di DotNetCampania la terza puntata della serie su come creare un sito con Orchard:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://dotnetcampania.org/wikis/articoli/creazione-di-un-sito-web-con-orchard-terza-parte.aspx" href="http://dotnetcampania.org/wikis/articoli/creazione-di-un-sito-web-con-orchard-terza-parte.aspx"&gt;http://dotnetcampania.org/wikis/articoli/creazione-di-un-sito-web-con-orchard-terza-parte.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Buona lettura&lt;/p&gt;  &lt;p&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1625" width="1" height="1"&gt;</description></item><item><title>Silverlight everywhere: grazie a tutti!</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/06/26/silverlight-everywhere-grazie-a-tutti.aspx</link><pubDate>Sun, 26 Jun 2011 16:23:32 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1622</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1622</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/06/26/silverlight-everywhere-grazie-a-tutti.aspx#comments</comments><description>&lt;p align="justify"&gt;E anche questa è fatta, ed è andata ancora una volta benissimo! Nonostante qualche inconveniente logistico (incidente in autostrada all’altezza di Vietri sul Mare) e tecnico (il nuovissimo portatile Dell di Antonio non ha nativamente l’uscita vga…) alle ore 14:00 tutti pronti al Novotel Est Arechi di Salerno per le registrazioni all’ultimo evento di questo fiscal year.&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6177.DSC_5F00_0001_5F00_32992FC7.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0001" border="0" alt="DSC_0001" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2768.DSC_5F00_0001_5F00_thumb_5F00_1AB984C9.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0160.DSC_5F00_0002_5F00_78EDAC37.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0002" border="0" alt="DSC_0002" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7077.DSC_5F00_0002_5F00_thumb_5F00_78715375.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8738.DSC_5F00_0007_5F00_45351A0C.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0007" border="0" alt="DSC_0007" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2043.DSC_5F00_0007_5F00_thumb_5F00_27CF9C75.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8688.DSC_5F00_0008_5F00_19406684.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0008" border="0" alt="DSC_0008" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8053.DSC_5F00_0008_5F00_thumb_5F00_43303EDF.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;        &lt;p align="justify"&gt;Per essere il primo vero evento a Salerno l’affluenza è stata ottima, sala quasi piena, tra cui un bel po’ di azienda del salernitano, oltre i soliti affezzionati di Napoli, che hanno voluto essere con noi anche in trasferta rispetto alle nostre abituali location. Alle 14.30 si parte con una keynote lampo, che ricorda chi siamo, cosa facciamo, come diventare soci, annuncia il nostro secondo compleanno, presenta l’agenda della giornata e ringrazia gli sponsor per averci permesso di essere li! La parola passa subito ad Antonio che ci presenta Redgate SmartAssembly, del nostro sponsor RedGate:&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6574.DSC_5F00_0010_5F00_7B028302.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0010" border="0" alt="DSC_0010" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5086.DSC_5F00_0010_5F00_thumb_5F00_4FADC62E.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3632.DSC_5F00_0011_5F00_4096E754.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0011" border="0" alt="DSC_0011" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6574.DSC_5F00_0011_5F00_thumb_5F00_2EAA2DBA.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8836.DSC_5F00_0014_5F00_3822EC30.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0014" border="0" alt="DSC_0014" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1462.DSC_5F00_0014_5F00_thumb_5F00_6AE2CCD7.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6433.DSC_5F00_0015_5F00_09B940B6.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0015" border="0" alt="DSC_0015" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1541.DSC_5F00_0015_5F00_thumb_5F00_6A667415.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;        &lt;p align="justify"&gt;Si passa poi alla prima sessione della giornata, che ci ha proposto un confronto tra EF e NH, presentati rispettivamente da Emanuele e Antonio, nella realizzazione dello strato di persistenza di un’applicazione di esempio realizzata per la giornata: la gestione di un sistema di prenotazione online di film in dvd.&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2656.DSC_5F00_0025_5F00_1E2E6A67.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0025" border="0" alt="DSC_0025" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6406.DSC_5F00_0025_5F00_thumb_5F00_55F088BD.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5852.DSC_5F00_0026_5F00_3FBA6D6B.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0026" border="0" alt="DSC_0026" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2273.DSC_5F00_0026_5F00_thumb_5F00_38F73E1B.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5732.DSC_5F00_0038_5F00_57CDB1F9.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0038" border="0" alt="DSC_0038" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5444.DSC_5F00_0038_5F00_thumb_5F00_233CB9E4.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2148.DSC_5F00_0034_5F00_7ABDD7CF.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0034" border="0" alt="DSC_0034" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5165.DSC_5F00_0034_5F00_thumb_5F00_2B60B9AE.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;      &lt;p align="justify"&gt;Piccola pausa e poi si riprende con Antonio alle prese con la realizzazione del client desktop e web dell’applicazione di esempio, utilizzando Silvelight 5. Nella seconda foto potete ammirare in prima fila il buon Massimo Bonanni, che da sempre onora la nostra community con la sua costante presenza, testimonianza della bellissima amicizia che ci lega con la community romana DomusDotNet. Ringrazio inoltre Max per il bellissimo regalo, il &lt;a href="http://www.domusdotnet.org/default.aspx"&gt;libro raccolta degli articoli apparsi sul portale DomusDotNet&lt;/a&gt;, e che consiglio a tutti di acquistare!&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1351.DSC_5F00_0025_5F00_58097387.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0025" border="0" alt="DSC_0025" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6557.DSC_5F00_0025_5F00_thumb_5F00_4EBD1279.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6835.DSC_5F00_0021_5F00_3ECDCDB5.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0021" border="0" alt="DSC_0021" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5047.DSC_5F00_0021_5F00_thumb_5F00_6E2C16B4.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;    &lt;p align="justify"&gt;Si chiude con la realizzazione, da parte di Emanuele, del client per Windows Phone 7, che non poteva sicuramente mancare e che ha illustrato alcuni dei concetti chiave nello sviluppo di applicazioni Silverlight per questa piattaforma, concetti che potete ritrovare, accuratamente trattati, &lt;a href="http://www.apress.com/9781430233718"&gt;nel libro di Apress&lt;/a&gt; di cui Emanuele è coautore insieme ad un suo collega.&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0488.DSC_5F00_0039_5F00_1AD4D08E.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0039" border="0" alt="DSC_0039" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2055.DSC_5F00_0039_5F00_thumb_5F00_14EA0728.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7776.DSC_5F00_0043_5F00_65B81B90.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0043" border="0" alt="DSC_0043" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4064.DSC_5F00_0043_5F00_thumb_5F00_74BED49D.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;    &lt;p&gt;Si chiude con una bellisima Q&amp;amp;A in cui si è discusso dell’uso di ORM e del supporto per le stored procedure, seguita dall’assegnazione di alcuni regali messi a disposizione dai nostri sponsor:&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6710.DSC_5F00_0041_5F00_4CAC257E.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0041" border="0" alt="DSC_0041" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5531.DSC_5F00_0041_5F00_thumb_5F00_4BC399C7.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0647.DSC_5F00_0044_5F00_714D1728.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0044" border="0" alt="DSC_0044" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3034.DSC_5F00_0044_5F00_thumb_5F00_3F89D1D5.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7331.DSC_5F00_0046_5F00_331BAEAC.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0046" border="0" alt="DSC_0046" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7230.DSC_5F00_0046_5F00_thumb_5F00_3A96F84C.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7532.DSC_5F00_0049_5F00_447BE9B7.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0049" border="0" alt="DSC_0049" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4135.DSC_5F00_0049_5F00_thumb_5F00_725916A2.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;        &lt;p&gt;Un grazie di cuore a tutti i presenti, e alle nostre stupende ragazze che come sempre ci hanno aiutato nell’accoglienza degli ospiti: Miriam e Alessandra!&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5758.DSC_5F00_0031_5F00_1539D853.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0031" border="0" alt="DSC_0031" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6445.DSC_5F00_0031_5F00_thumb_5F00_4B0EA7A0.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0638.DSC_5F00_0020_5F00_22239297.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0020" border="0" alt="DSC_0020" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4466.DSC_5F00_0020_5F00_thumb_5F00_7DDA9A15.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;    &lt;p align="justify"&gt;La giornata come sempre si è conclusa a tavola, anche se questa volta avevamo una scusa in più per abbandonare qualsiasi dieta o fioretto…. il secondo compleanno della nostra community! Gragnano è stata la nostra meta culinaria e come sempre non ha deluso… peccato per chi non c’era!!!&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/8787.DSC_5F00_0076_5F00_1CA0E827.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0076" border="0" alt="DSC_0076" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3482.DSC_5F00_0076_5F00_thumb_5F00_516DA1CA.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/5086.DSC_5F00_0087_5F00_281659CC.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0087" border="0" alt="DSC_0087" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1588.DSC_5F00_0087_5F00_thumb_5F00_28DE99E9.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/2337.DSC_5F00_0093_5F00_098BCD49.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0093" border="0" alt="DSC_0093" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1104.DSC_5F00_0093_5F00_thumb_5F00_4F5CB4CF.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7411.DSC_5F00_0098_5F00_7479FF3B.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0098" border="0" alt="DSC_0098" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/6472.DSC_5F00_0098_5F00_thumb_5F00_06466D3C.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0508.DSC_5F00_0108_5F00_59BD3D55.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0108" border="0" alt="DSC_0108" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7317.DSC_5F00_0108_5F00_thumb_5F00_2C2BF7C5.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="200"&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/7571.DSC_5F00_0111_5F00_5C72CC7B.jpg"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:inline;border-top:0px;border-right:0px;padding-top:0px;" title="DSC_0111" border="0" alt="DSC_0111" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/3323.DSC_5F00_0111_5F00_thumb_5F00_4A19DFEC.jpg" width="244" height="165" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;            &lt;p&gt;Grazie di cuore a tutti i partecipanti, con l’augurio di passare delle rilassanti ferie in attesa degli eventi del prossimo fiscal year!!!!&lt;/p&gt;  &lt;p&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1622" width="1" height="1"&gt;</description></item><item><title>Silverlight Everywhere: tutto pronto, non mancate!</title><link>http://dotnetcampania.org/blogs/michele/archive/2011/06/23/silverlight-everywhere-tutto-pronto-non-mancate.aspx</link><pubDate>Thu, 23 Jun 2011 14:51:15 GMT</pubDate><guid isPermaLink="false">793b29df-8c2a-42d1-a022-8914441a68e5:1619</guid><dc:creator>Michele Aponte</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://dotnetcampania.org/blogs/michele/rsscomments.aspx?PostID=1619</wfw:commentRss><comments>http://dotnetcampania.org/blogs/michele/archive/2011/06/23/silverlight-everywhere-tutto-pronto-non-mancate.aspx#comments</comments><description>&lt;p&gt;Come sempre succede, alla vigilia di un evento fervonoi preparativi e con una mezza giornata di anticipo possiamo dire che il grosso è fatto! C’è molta emozione, nonostante non sia il nostro primo evento. Sarà la città nuova, Salerno, che sta rispondendo alla grande con le iscrizioni! Magari è anche il fatto che si tratta dell’ultimo evento di questo fiscal year! &lt;/p&gt;  &lt;p&gt;&lt;a href="http://silverlighteverywhere.dotnetcampania.org/"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="header" border="0" alt="header" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/4152.header_5F00_09B7F980.png" width="506" height="167" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Aggiungiamo anche il secondo compleanno della community, che sarà ampiamente festeggiato domani sera a Gragnano…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/1106.compleanno_2D00_dotnet_2D00_grande_5F00_57247640.png"&gt;&lt;img style="background-image:none;border-bottom:0px;border-left:0px;padding-left:0px;padding-right:0px;display:block;float:none;margin-left:auto;border-top:0px;margin-right:auto;border-right:0px;padding-top:0px;" title="compleanno-dotnet-grande" border="0" alt="compleanno-dotnet-grande" src="http://dotnetcampania.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/michele.metablogapi/0257.compleanno_2D00_dotnet_2D00_grande_5F00_thumb_5F00_705C0813.png" width="227" height="240" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Insomma gli ingredienti per una buona riuscita dell’evento ci sono tutti, direi che non è il caso di perderselo!!!! Appuntamento alle ore 14.00 al&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOVOTEL SALERNO EST ARECHI&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Viale G. Clark, 49&lt;/p&gt;  &lt;p&gt;84131 - Salerno (SA)&lt;/p&gt;  &lt;p&gt;L&amp;#39;hotel si trova all&amp;#39;uscita Mariconda della tangenziale di Salerno SS18, a 7 km dallo svincolo Salerno Est Fratte, sulla litoranea di fronte al lido dei Carabinieri. Per ottenere le indicazioni necessarie da un indirizzo a vostra scelta potete visitare la pagina messa a disposizione dall&amp;#39;albergo:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.novotel.com/it/hotel-6351-novotel-salerno-est-arechi/location.shtml"&gt;http://www.novotel.com/it/hotel-6351-novotel-salerno-est-arechi/location.shtml&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;L&amp;#39;hotel dispone di parcheggi videocustoditi al costo di 1€ all&amp;#39;ora. All&amp;#39;esterno della struttura invece ci sono degli spazi gratuiti non custoditi. Alla reception dell&amp;#39;hotel vi indicheranno la sala dove si terrà l&amp;#39;evento, all&amp;#39;ingresso della sala troverete le nostre ragazze per la registrazione. Per evitare ritardi nell&amp;#39;inizio dei lavori vi preghiamo di arrivare alle 14.00 in punto. Per qualsiasi altra informazione non esitate a contattarci all&amp;#39;indirizzo: &lt;a href="mailto:team@dotnetcampania.org"&gt;team@dotnetcampania.org&lt;/a&gt;&lt;/p&gt;        &lt;p&gt;VI ASPETTIAMO!!!!&lt;/p&gt;  &lt;p&gt;--Michele&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://dotnetcampania.org/aggbug.aspx?PostID=1619" width="1" height="1"&gt;</description></item></channel></rss>
