<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>Matteo Migliore - Solution architect - Corsi .NET - Consulente .NET</title>
        <link>http://blogs.ugidotnet.org/matteomigliore/Default.aspx</link>
        <description>Blog di Matteo Migliore: consulente .NET, docente corsi .NET</description>
        <language>it-IT</language>
        <copyright>Matteo Migliore</copyright>
        <generator>Subtext Version 2.1.0.3</generator>
        <image>
            <title>Matteo Migliore - Solution architect - Corsi .NET - Consulente .NET</title>
            <url>http://blogs.ugidotnet.org/images/RSS2Image.gif</url>
            <link>http://blogs.ugidotnet.org/matteomigliore/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/MatteoMigliore" type="application/rss+xml" /><feedburner:browserFriendly></feedburner:browserFriendly><item>
            <title>Cosa bolle in pentola&amp;hellip;</title>
            <link>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/29/cosa-bolle-in-pentolahellip.aspx</link>
            <description>&lt;p&gt;Su &lt;a title="CodeProject" href="http://www.codeproject.com/"&gt;CodeProject&lt;/a&gt; questa settimana sono stati pubblicati o ripubblicati diversi articoli interessanti. La qualità del codice e delle persone che lo scrivono aumenta e si vede sempre di più. L’informatica continua a fare grandi passi avanti! Qualche anno fa non era così allettante leggere una news letter di qualche portale di sviluppo.    &lt;br /&gt;    &lt;br /&gt;Comunque, secondo il mio ordine di rilevanza:    &lt;br /&gt;1. &lt;a title="CodeProject:AutoDiagrammer" href="http://www.codeproject.com/KB/cs/AutoDiagrammer.aspx"&gt;AutoDiagrammer&lt;/a&gt;: un tool per creare il class diagram dato l’assembly .NET; non avuto modo di vedere il codice sorgente, che sembra non esserci se non decompilando la library, ma all’interno si trova anche una classe che permette di capire se il file è un assembly .NET leggendone l’intestazione, domanda che leggo frequentemente    &lt;br /&gt;2. &lt;a title="CodeProject: GenericCrossThread per Windows Forms" href="http://www.codeproject.com/KB/cs/GenericCrossThread.aspx"&gt;Generic cross thread per Windows Forms&lt;/a&gt;: un metodo per fare chiamate cross-thread usando Control.Invoke per eseguire il codice nel main thread dell’applicazione Windows; nota: è meglio convertire il metodo in un extension method ;-)    &lt;br /&gt;3. &lt;a title="CodeProject: MVVM dialogs" href="http://www.codeproject.com/KB/architecture/MVVM_Dialogs.aspx"&gt;MVVM Dialogs&lt;/a&gt;: come risolvere il problema di visulizzare dialog box modali “sporcando” il pattern, argomento caldo visto che l’ha trattato anche &lt;a title="Blog: Mauro Servienti" href="http://blogs.ugidotnet.org/topics"&gt;Mauro&lt;/a&gt; ieri alla &lt;a title="Conferenza UGI Alt.NET 27/06/2009" href="http://www.ugialt.net/Meetings.ashx#IV_UgiAltNetConf_CH_Giugno_CAAJ_16"&gt;conference UGI Alt&lt;/a&gt;    &lt;br /&gt;4. &lt;a title="CodeProject: Code browser take 2 Silverlight" href="http://www.codeproject.com/Articles/37461/Code-Browser-Take-2-Silverlight.aspx"&gt;Code browser take 2 Silverlight&lt;/a&gt;: un browser di codice via AJAX con syntax highlighter o via Silverlight    &lt;br /&gt;5. &lt;a title="CodeProject: Permutations" href="http://www.codeproject.com/KB/recipes/Premutations.aspx"&gt;Permutations&lt;/a&gt;: calcolo delle &lt;a title="Wikipedia: Permutation" href="http://en.wikipedia.org/wiki/Permutation"&gt;permutazioni semplici&lt;/a&gt;, altra richiesta frequente    &lt;br /&gt;    &lt;br /&gt;Il mio &lt;a title="Blog: Matteo Migliore - Migrazione a Visual Studio 2010 B1 e al Framework 4" href="http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/26/migrazione-a-visual-studio-2010-b1-e-al-framework-4.aspx"&gt;viaggio&lt;/a&gt; verso &lt;a title="Blog: Mauro Servienti" href="http://blogs.ugidotnet.org/topics"&gt;cit.&lt;/a&gt; “la Mecca delle architetture” continua…    &lt;br /&gt;    &lt;br /&gt;Matteo Migliore.    &lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/matteomigliore/aggbug/96552.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Matteo Migliore</dc:creator>
            <guid>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/29/cosa-bolle-in-pentolahellip.aspx</guid>
            <pubDate>Sun, 28 Jun 2009 22:37:35 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/matteomigliore/comments/96552.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/29/cosa-bolle-in-pentolahellip.aspx#feedback</comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/matteomigliore/comments/commentRss/96552.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Migrazione a Visual Studio 2010 B1 e al Framework 4: ahi ahi che dolor</title>
            <link>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/26/migrazione-a-visual-studio-2010-b1-e-al-framework-4.aspx</link>
            <description>&lt;p&gt;Nella mia società stiamo facendo la migrazione di tutte le applicazioni core al FW 4.0, ovviamente non senza sorprese. Sto lavorando su una solution di esempio che pubblicherò a breve per testare Entity Framework v2 o v4 (mah :-) ) in modalità &lt;a title="Entity Framework Blog : Code only" href="http://blogs.msdn.com/efdesign/archive/2009/06/10/code-only.aspx"&gt;Model&lt;/a&gt; &lt;a href="http://blogs.microsoft.co.il/blogs/gilf/archive/2009/05/23/model-first-in-entity-framework-4.aspx"&gt;First&lt;/a&gt;: spettacolo; e su altre tipo Silverlight 3 come &lt;a title="Blog MSDN: Silverlight Navigation Part 1" href="http://blogs.msdn.com/dphill/archive/2008/10/07/silverlight-navigation-part-1.aspx"&gt;Navigation Application&lt;/a&gt;.     &lt;br /&gt;    &lt;br /&gt;A proposito di Navigation Application, in VS2010 B1 a me non compare il template.     &lt;br /&gt;    &lt;br /&gt;La &lt;a title="Blog Tim Heuer: Silverlight and Visual Studio 2010 Beta1" href="http://timheuer.com/blog/archive/2009/05/20/silverlight-and-visual-studio-2010-beta.aspx"&gt;soluzione&lt;/a&gt; sarebbe quella di reinstallare l’SDK di Silverlight 2, l’SDK Silverlight 3 e il Developer Runtime, a me non funziona; poco male perchè è sufficiente aggiungere le reference alle library:     &lt;br /&gt;1. System.Windows.Browser     &lt;br /&gt;2. System.Windows.Controls.Navigation     &lt;br /&gt;    &lt;br /&gt;Arrivando a WCF 4.0, almeno credo proprio che il problema sia quello, non riuscivo a creare la reference al servizio ottenendo questo errore:     &lt;br /&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Metadata publishing for this service is currently disabled&lt;/strong&gt;.&lt;/font&gt;     &lt;br /&gt;    &lt;br /&gt;Certo cercare su Google è bello, ma far cercare ad altri, in particolare il buon &lt;a title="Blog: Alessandro Scardova" href="http://blogs.ugidotnet.org/allePalle_blog"&gt;Ale&lt;/a&gt;, è meglio. Per il momento la soluzione è &lt;a title="Silverlight Forum: Duplexing Web Service Metadata publishing error" href="http://silverlight.net/forums/t/50393.aspx"&gt;questa&lt;/a&gt;:     &lt;br /&gt;------------------------------------------------------------     &lt;br /&gt;ServiceHostBase host = OperationContext.Current.Host; &lt;/p&gt;  &lt;p&gt;ServiceMetadataBehavior serviceMetadataBehavior = host.Description.Behaviors.Find&amp;lt;ServiceMetadataBehavior&amp;gt;(); &lt;/p&gt;  &lt;p&gt;if (serviceMetadataBehavior == null)    &lt;br /&gt;{ &lt;/p&gt;  &lt;p&gt;    serviceMetadataBehavior = new ServiceMetadataBehavior();    &lt;br /&gt;    serviceMetadataBehavior.HttpGetEnabled = true; &lt;/p&gt;  &lt;p&gt;    serviceMetadataBehavior.MetadataExporter.PolicyVersion = PolicyVersion.Policy15;    &lt;br /&gt;    host.Description.Behaviors.Add(serviceMetadataBehavior); &lt;/p&gt;  &lt;p&gt;    host.AddServiceEndpoint(ServiceMetadataBehavior.MexContractName, MetadataExchangeBindings.CreateMexHttpBinding(), "mex");    &lt;br /&gt;}     &lt;br /&gt;------------------------------------------------------------     &lt;br /&gt;    &lt;br /&gt;L’avventura continua…     &lt;br /&gt;    &lt;br /&gt;Matteo Migliore.&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/matteomigliore/aggbug/96533.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Matteo Migliore</dc:creator>
            <guid>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/26/migrazione-a-visual-studio-2010-b1-e-al-framework-4.aspx</guid>
            <pubDate>Fri, 26 Jun 2009 11:10:12 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/matteomigliore/comments/96533.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/26/migrazione-a-visual-studio-2010-b1-e-al-framework-4.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/matteomigliore/comments/commentRss/96533.aspx</wfw:commentRss>
        </item>
        <item>
            <title>[OT] Verso la Croazia&amp;hellip;</title>
            <link>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/13/ot-verso-la-croaziahellip.aspx</link>
            <description>&lt;p&gt;Cosa vogliamo dire di questo benedetto omino qua? :-D   &lt;br /&gt;&lt;img src="http://files.getdropbox.com/u/1312798/Blog/2009/06/13/Lorenzo.jpg" /&gt; &lt;/p&gt;  &lt;p&gt;Altre foto non posso pubblicarle causa censura (non sono foto di &lt;a title="Blog: Lorenzo Barbieri" href="http://www.geniodelmale.info"&gt;Lorenzo&lt;/a&gt;… :D).    &lt;br /&gt;    &lt;br /&gt;Matteo Migliore.&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/matteomigliore/aggbug/96421.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Matteo Migliore</dc:creator>
            <guid>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/13/ot-verso-la-croaziahellip.aspx</guid>
            <pubDate>Sat, 13 Jun 2009 09:17:29 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/matteomigliore/comments/96421.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/13/ot-verso-la-croaziahellip.aspx#feedback</comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/matteomigliore/comments/commentRss/96421.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Iterazione e azione ricorsiva su una collection gerarchica</title>
            <link>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/13/iterazione-e-azione-ricorsiva-su-una-collection-gerarchica.aspx</link>
            <description>&lt;p&gt;Da una &lt;a title="News Group microsoft.public.it.dotnet.asp: 'Resettare campo textbox.text'" href="http://groups.google.com/group/microsoft.public.it.dotnet.asp/browse_thread/thread/bd6aaa75d2e8c5f9"&gt;richiesta&lt;/a&gt; sul &lt;a title="News group microsoft.public.it.dotnet.asp" href="http://groups.google.com/group/microsoft.public.it.dotnet.asp/topics"&gt;news group di ASP.NET&lt;/a&gt; riporto questi due extension method che ho scritto per iterare ricorsivamente su una collection in modo gerarchico ed effettuare un’azione, nel caso specifico è stato chiesto come cancellare tutte le TextBox di una pagina senza doverlo fare manualmente su ognuna:     &lt;br /&gt;--------------------------------------------------------  &lt;br /&gt;public static class ControlExtension    &lt;br /&gt;{    &lt;br /&gt;    public static void DoActionForAllChildren&amp;lt;T&amp;gt;(this Control container, Action&amp;lt;T&amp;gt; action)    &lt;br /&gt;    {    &lt;br /&gt;        container.Controls    &lt;br /&gt;            .OfType&amp;lt;Control&amp;gt;()    &lt;br /&gt;            .Traverse(control =&amp;gt; control.Controls.OfType&amp;lt;Control&amp;gt;())    &lt;br /&gt;            .Where(control =&amp;gt; control.GetType() == typeof(T))    &lt;br /&gt;            .Cast&amp;lt;T&amp;gt;()    &lt;br /&gt;            .ForEach(action);    &lt;br /&gt;    }    &lt;br /&gt;}&lt;/p&gt;  &lt;p&gt;public static class EnumerableHierarchicalExtension   &lt;br /&gt;{    &lt;br /&gt;    public static IEnumerable&amp;lt;T&amp;gt; Traverse&amp;lt;T&amp;gt;(this IEnumerable&amp;lt;T&amp;gt; source, Func&amp;lt;T, IEnumerable&amp;lt;T&amp;gt;&amp;gt; recursion)    &lt;br /&gt;    {    &lt;br /&gt;        foreach (T item in source)    &lt;br /&gt;        { &lt;/p&gt;  &lt;p&gt;            yield return item; &lt;/p&gt;  &lt;p&gt;            IEnumerable&amp;lt;T&amp;gt; recursionSequence = recursion(item); &lt;/p&gt;  &lt;p&gt;            if (recursionSequence != null)   &lt;br /&gt;            { &lt;/p&gt;  &lt;p&gt;                foreach (T itemRecurse in Traverse(recursionSequence, recursion))   &lt;br /&gt;                { &lt;/p&gt;  &lt;p&gt;                    yield return itemRecurse;   &lt;br /&gt;                }    &lt;br /&gt;            }    &lt;br /&gt;        }    &lt;br /&gt;    } &lt;/p&gt;  &lt;p&gt;    public static void ForEach&amp;lt;T&amp;gt;(this IEnumerable&amp;lt;T&amp;gt; source, Action&amp;lt;T&amp;gt; action)   &lt;br /&gt;    {    &lt;br /&gt;        foreach (var item in source)    &lt;br /&gt;        {    &lt;br /&gt;            action(item);    &lt;br /&gt;        }    &lt;br /&gt;    }    &lt;br /&gt;}    &lt;br /&gt;--------------------------------------------------------     &lt;br /&gt;    &lt;br /&gt;Quindi la chiamata diventa:     &lt;br /&gt;--------------------------------------------------------     &lt;br /&gt;this.DoActionForAllChildren&amp;lt;TextBox&amp;gt;(action =&amp;gt; action.Text = string.Empty);     &lt;br /&gt;--------------------------------------------------------     &lt;br /&gt;    &lt;br /&gt;[Update]    &lt;br /&gt;Codice leggermente riadattato secondo il consiglio di Stefano.    &lt;br /&gt;    &lt;br /&gt;Matteo Migliore.     &lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/matteomigliore/aggbug/96419.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Matteo Migliore</dc:creator>
            <guid>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/13/iterazione-e-azione-ricorsiva-su-una-collection-gerarchica.aspx</guid>
            <pubDate>Fri, 12 Jun 2009 22:17:07 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/matteomigliore/comments/96419.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/13/iterazione-e-azione-ricorsiva-su-una-collection-gerarchica.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/matteomigliore/comments/commentRss/96419.aspx</wfw:commentRss>
        </item>
        <item>
            <title>[OT] Evento Microsoft in Croazia con Lorenzo</title>
            <link>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/12/ot-evento-microsoft-in-croazia-con-lorenzo.aspx</link>
            <description>&lt;p&gt;Si parte ora, per un &lt;a title="Microsoft Community Croazia" href="http://kulendayz.mscommunity.net/"&gt;evento&lt;/a&gt; Microsoft in Croazia con &lt;a title="Blog: Lorenzo Barbieri" href="http://www.geniodelmale.info"&gt;Lorenzo&lt;/a&gt;. Figata! 9 ore di viaggio!!     &lt;br /&gt;    &lt;br /&gt;Matteo Migliore.&lt;/p&gt;&lt;img src="http://blogs.ugidotnet.org/matteomigliore/aggbug/96412.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Matteo Migliore</dc:creator>
            <guid>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/12/ot-evento-microsoft-in-croazia-con-lorenzo.aspx</guid>
            <pubDate>Fri, 12 Jun 2009 08:37:54 GMT</pubDate>
            <wfw:comment>http://blogs.ugidotnet.org/matteomigliore/comments/96412.aspx</wfw:comment>
            <comments>http://blogs.ugidotnet.org/matteomigliore/archive/2009/06/12/ot-evento-microsoft-in-croazia-con-lorenzo.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/matteomigliore/comments/commentRss/96412.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>
