<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Luigi Melisi &#187; Development</title>
	<atom:link href="http://www.luigimelisi.com/tag/development/feed" rel="self" type="application/rss+xml" />
	<link>http://www.luigimelisi.com</link>
	<description>Development Blog : C# Code Samples,.NET Tips and Tricks</description>
	<lastBuildDate>Thu, 29 Jul 2010 14:54:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Riflessioni sui trend nei sistemi di gestione del codice sorgente</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/riflessioni-sui-trend-nei-sistemi-di-gestione-del-codice-sorgente.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=riflessioni-sui-trend-nei-sistemi-di-gestione-del-codice-sorgente</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/riflessioni-sui-trend-nei-sistemi-di-gestione-del-codice-sorgente.html#comments</comments>
		<pubDate>Sat, 06 Feb 2010 00:00:17 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[.Net FrameWork]]></category>
		<category><![CDATA[codice]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[evoluzione]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[post]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Visual C#]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/programmazione/net_framework/riflessioni-sui-trend-nei-sistemi-di-gestione-del-codice-sorgente.html</guid>
		<description><![CDATA[Questo post rappresenta alcune riflessioni sull’evoluzione dei sistemi di gestione del codice sorgente, derivate da una serie di eventi: La diffusione dei sistemi di gestione distribuita del codice (DVCS) soprattutto nei progetti Open Source. Il rilascio&#8230;(read more)]]></description>
			<content:encoded><![CDATA[<p>Questo post rappresenta alcune riflessioni sull’evoluzione dei sistemi di gestione del codice sorgente, derivate da una serie di eventi: La diffusione dei sistemi di gestione distribuita del codice (DVCS) soprattutto nei progetti Open Source. Il rilascio&#8230;(<a href="http://blogs.msdn.com/italy/archive/2010/02/05/riflessioni-sui-trend-nei-sistemi-di-gestione-del-codice-sorgente.aspx" rel="nofollow">read more</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/riflessioni-sui-trend-nei-sistemi-di-gestione-del-codice-sorgente.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Riordinare gli elementi di una lista tramite Drag and Drop con jQuery</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/riordinare-gli-elementi-di-una-lista-tramite-drag-and-drop-con-jquery.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=riordinare-gli-elementi-di-una-lista-tramite-drag-and-drop-con-jquery</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/riordinare-gli-elementi-di-una-lista-tramite-drag-and-drop-con-jquery.html#comments</comments>
		<pubDate>Mon, 11 Jan 2010 13:22:41 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[asp]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[getOrder]]></category>
		<category><![CDATA[sortable]]></category>
		<category><![CDATA[visuale]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=575</guid>
		<description><![CDATA[Attraverso jQuery.UI è possibile sfruttare un comodo sistema, chiamato sortable, che consente di applicare facilmente il drag &#38; drog a liste. Una volta scaricato jQuery.UI, l&#8217;aggiunta del supporto per il drag &#38; drop ad una serie di elmenti è semplice. Per prima cosa è necessario comporre un markup che consenta facilmente di gestire dal punto]]></description>
			<content:encoded><![CDATA[<p>Attraverso<strong> jQuery.UI</strong> è possibile sfruttare un comodo sistema, chiamato sortable, che consente di applicare facilmente il drag &amp; drog a liste.<br />
Una volta scaricato<strong> jQuery.UI</strong>, l&#8217;aggiunta del supporto per il drag &amp; drop ad una serie di elmenti è semplice.<br />
Per prima cosa è necessario comporre un markup che consenta facilmente di gestire dal punto di vista visuale questo comportamento, quindi è opportuno lavorare con uno stile che indichi chiaramente che l&#8217;elemento può essere trascinati. A questo scopo si presta bene un elenco puntato:</p>
<blockquote>
<pre><strong>&lt;ul id="tutorials"&gt; </strong></pre>
<pre><strong>&lt;li id="1"&gt;ASP.NET&lt;/li&gt; </strong></pre>
<pre><strong>&lt;li id="3"&gt;ASP.NET 3.5&lt;/li&gt; </strong></pre>
<pre><strong>&lt;li id="4"&gt;ASP.NET 4.0&lt;/li&gt; </strong></pre>
<pre><strong>&lt;li id="99"&gt;Silverlight&lt;/li&gt; </strong></pre>
<pre><strong>&lt;li id="15"&gt;Entity Framework&lt;/li&gt; </strong></pre>
<pre><strong>&lt;/ul&gt;</strong></pre>
</blockquote>
<p><span id="more-575"></span></p>
<p>Probabilmente l&#8217;ordinamento scelto dall&#8217;utente dovrà poi essere gestito lato server dalla nostra applicazione. Purtroppo, però, l&#8217;elenco puntato non viene inviato in post dal browser e pertanto diventa necessario prevedere un campo hidden in cui salvare questa informazione (nell&#8217;esempio allegato è un campo di tipo text affinché sia possibile vedere come varia al variare dell&#8217;ordinamento).<br />
L&#8217;ID associato agli elementi è in questo caso l&#8217;ID dell&#8217;elemento all&#8217;interno del database, ma è possibile adottare tecniche alternative, l&#8217;importante è poi avere una strategia unica per salvare la posizione corrispondente nel database.</p>
<p>A questo punto è sufficiente scrivere un piccolo pezzo di codice che attivi l&#8217;ordinamento:</p>
<blockquote>
<pre><strong>&lt;scriptcolor: darkred;" lang="EN-GB"&gt;text/javascript"&gt;&lt;!-- </strong></pre>
<pre><strong>var setSelector = "#tutorials"; </strong></pre>
<pre><strong>$(function() { </strong></pre>
<pre><strong>  $(setSelector).sortable({ </strong></pre>
<pre><strong>    axis: "y", </strong></pre>
<pre><strong>    cursor: "move", </strong></pre>
<pre><strong>    update: function() { getOrder(); } </strong></pre>
<pre><strong>  }); </strong></pre>
<pre><strong>   </strong></pre>
<pre><strong>  getOrder(); </strong></pre>
<pre><strong>}); </strong></pre>
</blockquote>
<pre>function getOrder() {</pre>
<pre>  $('#order').val($(setSelector).sortable("toArray"));</pre>
<pre>}</pre>
<pre>//--&gt;&lt;/script&gt;</pre>
<p>La funzione getOrder si occupa di salvare l&#8217;ordine corrente all&#8217;interno di un campo nascosto: a questo punto per inviare il valore direttamente al server è sufficiente inserire un pulsante di submit della form.<br />
Questa tecnica è facilmente implementabile con ASP.NET grazie all&#8217;uso del controllo Repeater, che consente di produrre un markup con dati prelavati da database, sostituendo solo l&#8217;ID dove serve:</p>
<pre>&lt;asp:Repeater id="TutorialList" runat="server"&gt;</pre>
<pre>  &lt;HeaderTemplate&gt;</pre>
<pre>    &lt;ul id="tutorials"&gt;</pre>
<pre>  &lt;/HeaderTemplate&gt;</pre>
<pre>  &lt;ItemTemplate&gt;</pre>
<pre>     &lt;li id="&lt;%#Eval("ID")%&gt;"&gt;&lt;%#Eval("TutorialName")&lt;/li&gt;</pre>
<pre>   &lt;/ItemTemplate&gt;</pre>
<pre>  &lt;FooterTemplate&gt;</pre>
<pre>    &lt;ul id="tutorials"&gt;</pre>
<pre>  &lt;/FooterTemplate&gt;</pre>
<pre>&lt;/asp:Repeater&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/riordinare-gli-elementi-di-una-lista-tramite-drag-and-drop-con-jquery.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sincronizzare diversi device in un click con SyncToy</title>
		<link>http://www.luigimelisi.com/tips-and-tricks/sincronizzare-diversi-device-in-un-click-con-synctoy.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=sincronizzare-diversi-device-in-un-click-con-synctoy</link>
		<comments>http://www.luigimelisi.com/tips-and-tricks/sincronizzare-diversi-device-in-un-click-con-synctoy.html#comments</comments>
		<pubDate>Fri, 27 Nov 2009 20:35:02 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Device]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[SyncToy]]></category>
		<category><![CDATA[Utility]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=397</guid>
		<description><![CDATA[Uno degli ultimi aggiornamenti interessanti in casa Microsoft è SyncToy, un piccolo Software che permette la sincronizzazione di diversi device (cellulari,palmari, macchine fotografiche,ecc. ) con un semplice click del mouse. In pratica, utilizza un’architettura basata su coppie di cartelle, dove è possibile specificare varie coppie di cartelle desiderate e sincronizzare una o tutte le coppie facilmente con]]></description>
			<content:encoded><![CDATA[<div id="attachment_398" class="wp-caption alignleft" style="width: 215px"><img class="size-full wp-image-398" title="SyncToy" src="http://www.luigimelisi.com/wp-content/uploads/2009/11/SyncToy.png" alt="Microsoft SyncToy : Sincronizzare cartelle in un click" width="205" height="148" /><p class="wp-caption-text">Microsoft SyncToy : Sincronizzare cartelle in un click</p></div>
<p>Uno degli ultimi aggiornamenti interessanti in casa<strong> Microsoft</strong> è <strong>SyncToy, </strong>un piccolo Software che permette la sincronizzazione di diversi device (cellulari,palmari, macchine fotografiche,ecc. )<strong> con un semplice click del mouse</strong>.</p>
<p>In pratica, utilizza un’architettura basata su coppie di cartelle, dove è possibile specificare varie coppie di cartelle desiderate e sincronizzare una o tutte le coppie facilmente con un semplice click. La creazione della coppia di cartelle è fattibile tramite una procedura guidata in quattro step abbastanza semplici.</p>
<p>Il tool non si limita a sincronizzare i file di una cartella, ma capisce anche quando le viene cambiato il nome o l’estensione di un file presente, agendo subito di conseguenza. Inoltre riconosce anche quando un device di memoria esterno è stata riconosciuta dal sistema con un’unità differente.</p>
<p><a rel="nofollow" href="http://www.microsoft.com/downloads/details.aspx?familyid=c26efa36-98e0-4ee9-a7c5-98d0592d8c52&amp;displaylang=en" target="_blank">SyncToy 2.1</a> è gratuito ed è disponibile per Windows XP, Vista e 7 a 32 e 64-bit.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/tips-and-tricks/sincronizzare-diversi-device-in-un-click-con-synctoy.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Icon Finder : un ottimo motore di ricerca per icone</title>
		<link>http://www.luigimelisi.com/tips-and-tricks/icon-finder-un-ottimo-motore-di-ricerca-per-icone.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=icon-finder-un-ottimo-motore-di-ricerca-per-icone</link>
		<comments>http://www.luigimelisi.com/tips-and-tricks/icon-finder-un-ottimo-motore-di-ricerca-per-icone.html#comments</comments>
		<pubDate>Fri, 27 Nov 2009 18:45:07 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Icon Finder]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Utility]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=390</guid>
		<description><![CDATA[Avete bisogno di un&#8217;icona o di una immagine stilizzata per un articolo del vostro blog o per un software che state sviluppando? Icon Finder fa prorpio al caso vostro. Questo sito è un ottimo motore di ricerca che vi permette di  ricercare e scaricare  file .ico  e .png visualizzando anche in maniera chiara la licenza del file]]></description>
			<content:encoded><![CDATA[<div id="attachment_393" class="wp-caption alignleft" style="width: 198px"><img class="size-full wp-image-393" title="Icon Finder" src="http://www.luigimelisi.com/wp-content/uploads/2009/11/logo-large.png" alt="Icon Finder" width="188" height="77" /><p class="wp-caption-text">Icon Finder</p></div>
<p>Avete bisogno di un&#8217;icona o di una immagine stilizzata per un articolo del vostro blog o per un software che state sviluppando?<br />
<strong><em><span style="font-size: large;"><a title="Icon Finder" href="http://www.iconfinder.net" rel="nofollow">Icon Finder</a></span></em></strong><span style="font-size: large;"> </span>fa prorpio al caso vostro. Questo sito è un ottimo motore di ricerca che vi permette di  ricercare e scaricare  <strong><em>file .ico  e .png </em></strong>visualizzando anche in maniera chiara la licenza del file appena scaricato.</p>
<p><strong><em><span style="font-size: medium;"> </span></em></strong></p>
<p><strong><em><span style="font-size: medium;"><a title="Icon Finder" rel="nofollow" href="http://www.iconfinder.net">Visita Icon Finder cliccando qui</a></span></em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/tips-and-tricks/icon-finder-un-ottimo-motore-di-ricerca-per-icone.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C# : Stampa di un file di testo</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/visual-c/c-stampa-di-un-file-di-testo.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=c-stampa-di-un-file-di-testo</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/visual-c/c-stampa-di-un-file-di-testo.html#comments</comments>
		<pubDate>Tue, 29 Sep 2009 17:20:45 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Visual C#]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[how to]]></category>
		<category><![CDATA[stampare file]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=202</guid>
		<description><![CDATA[Nell'esempio riportato di seguito viene illustrato un sistema veloce per stampare un file di testo con c#]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: x-small;">Nell&#8217;esempio riportato di seguito viene illustrato un sistema veloce per stampare un file di testo con c#<span id="more-202"></span></span><br />
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "pub-7844166093069047";
/* 234x60, creato 06/07/10 */
google_ad_slot = "2800042742";
google_ad_width = 234;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div></p>
<pre class="brush: csharp;">
System.IO.StreamReader fileToPrint;
System.Drawing.Font printFont;
private void printButton_Click(object sender, EventArgs e)
{
   string printPath = System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
   fileToPrint = new System.IO.StreamReader(printPath + @&quot;\myFile.txt&quot;);
   printFont = new System.Drawing.Font(&quot;Arial&quot;, 11);
   printDocument1.Print();
   fileToPrint.Close();
}
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
   float yPos = 0f;
   int count = 0;
   float leftMargin = e.MarginBounds.Left;
   float topMargin = e.MarginBounds.Top;
   string line = null;
   float linesPerPage = e.MarginBounds.Height/printFont.GetHeight(e.Graphics);
   while (count &amp;lt; linesPerPage)
   {
      line = fileToPrint.ReadLine();
      if (line == null)
      {
         break;
      }
      yPos = topMargin + count * printFont.GetHeight(e.Graphics);
      e.Graphics.DrawString(line, printFont, Brushes.Black, leftMargin, yPos, new StringFormat());
      count++;
   }
   if (line != null)
   {
      e.HasMorePages = true;
   }
}
</pre>
<div class="clear-block"><div class="ad aligncenter"><script type="text/javascript"><!--
google_ad_client = "pub-7844166093069047";
/* 468x60, creato 11/06/10 */
google_ad_slot = "7113887670";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/visual-c/c-stampa-di-un-file-di-testo.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scrivere un file con C#</title>
		<link>http://www.luigimelisi.com/tips-and-tricks/scrivere-un-file-con-c.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=scrivere-un-file-con-c</link>
		<comments>http://www.luigimelisi.com/tips-and-tricks/scrivere-un-file-con-c.html#comments</comments>
		<pubDate>Tue, 29 Sep 2009 17:17:18 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[File]]></category>
		<category><![CDATA[StreamWriter]]></category>
		<category><![CDATA[System.IO]]></category>
		<category><![CDATA[Visual C#]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=200</guid>
		<description><![CDATA[using System.IO; String myFile = @&#8221;c:\temp.txt&#8221;; using (StreamWriter testo = new StreamWriter(myFile)) {       testo.Write(“Testo da scrivere”); }]]></description>
			<content:encoded><![CDATA[<p><span style="color: #3366ff;">using</span> System.IO;</p>
<p><span style="color: #339966;">String</span> myFile = <span style="color: #993300;">@&#8221;c:\temp.txt&#8221;;</span><br />
<span style="color: #0000ff;">using</span> (<span style="color: #339966;">StreamWriter</span> testo = <span style="color: #0000ff;">new</span> <span style="color: #339966;">StreamWriter</span>(myFile))<br />
{<br />
      testo.Write(“Testo da scrivere”);<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/tips-and-tricks/scrivere-un-file-con-c.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silverlight 3 : disponibile su MSDN la documentazione in italiano</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/silverlight/silverlight-3-disponibile-su-msdn-la-documentazione-in-italiano.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=silverlight-3-disponibile-su-msdn-la-documentazione-in-italiano</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/silverlight/silverlight-3-disponibile-su-msdn-la-documentazione-in-italiano.html#comments</comments>
		<pubDate>Tue, 01 Sep 2009 11:29:34 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[aspx]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Luigi Melisi]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[msdn]]></category>
		<category><![CDATA[OnLine]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=150</guid>
		<description><![CDATA[La documentazione in italiano su Silverlight 3  è disponibile ai seguenti link: Documentazione on-line: MSDN Online Library Documentazione off-line: Microsoft Download Center]]></description>
			<content:encoded><![CDATA[<p>La documentazione in italiano su <strong>Silverlight </strong>3  è disponibile ai seguenti link:</p>
<p><a href="http://msdn.microsoft.com/it-it/library/cc838158(VS.95).aspx">Documentazione on-line: MSDN Online Library</a></p>
<p><a href="http://www.microsoft.com/downloads/details.aspx?displaylang=it&amp;FamilyID=0a9773a7-c854-41fa-b73d-535abfb73baf">Documentazione off-line: Microsoft Download Center</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/silverlight/silverlight-3-disponibile-su-msdn-la-documentazione-in-italiano.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cache con dipendenza da SQL Server 2005 e ASP.NET 2.0</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/visual-c/cache-con-dipendenza-da-sql-server-2005-e-asp-net-2-0.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=cache-con-dipendenza-da-sql-server-2005-e-asp-net-2-0</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/visual-c/cache-con-dipendenza-da-sql-server-2005-e-asp-net-2-0.html#comments</comments>
		<pubDate>Wed, 26 Aug 2009 18:25:05 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Visual C#]]></category>
		<category><![CDATA[Asp.Net]]></category>
		<category><![CDATA[Cache]]></category>
		<category><![CDATA[Code Samples]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[HttpListener]]></category>
		<category><![CDATA[Luigi Melisi]]></category>
		<category><![CDATA[Service Broker]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[SQL Server 2005]]></category>
		<category><![CDATA[SqlCacheDependency]]></category>
		<category><![CDATA[Utils]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=140</guid>
		<description><![CDATA[SQL Server 2005 offre un supporto nativo alla dipendenza su database di oggetti salvati in Cache, una delle novità offerte dall&#8217;infrastruttura di cache di ASP.NET 2.0. Questa possibilità consente di sfruttare gli HttpListener di ASP.NET, così che sia SQL Server ad inviare le notifiche sui cambi nei risultati della query, anzichè essere ASP.NET a farne]]></description>
			<content:encoded><![CDATA[<p><strong>SQL Server 2005</strong> offre un supporto nativo alla dipendenza su database di oggetti salvati in Cache, una delle novità offerte dall&#8217;infrastruttura di <strong>cache</strong> di <strong>ASP.NET 2.0.<span id="more-140"></span></strong></p>
<p>Questa possibilità consente di sfruttare gli <strong>HttpListener di ASP.NET</strong>, così che sia <strong>SQL Server</strong> ad inviare le <strong>notifiche sui cambi nei risultati della query</strong>, anzichè essere ASP.NET a farne una ad intervalli regolari per verificare che i dati siano cambiati.</p>
<p>Tra l&#8217;altro questo consente di limitare di molto la fase di configurazione della dipendenza, che si limita ad abilitare il supporto del <strong>Service Broker</strong> sul database e dare l&#8217;accesso all&#8217;utente, il tutto eseguendo questi comandi:</p>
<pre>ALTER DATABASE mioDatabase SET ENABLE_BROKER</pre>
<pre>GRANT SUBSCRIBE QUERY NOTIFICATIONS TO mioNome</pre>
<p>Per tenere in <strong>cache</strong> il risultato di una query fino a che la stessa non avrà modificato i propri dati è sufficiente <strong>associare il SqlCommand utilizzato ad una nuova istanza di tipo SqlCacheDependency</strong>, così che il risultato venga monitorato e l&#8217;oggetto in cache venga poi invalidato e rimosso in automatico.</p>
<p><strong>C#</strong></p>
<pre><span style="color: #3366ff;">using</span> (<span style="color: #339966;">SqlConnection</span> conn = new <span style="color: #339966;">SqlConnection</span>(miaStringaConnessione))</pre>
<pre>{</pre>
<pre><span style="color: #008000;">// query da eseguire</span></pre>
<pre>SqlCommand cmd = new SqlCommand("SELECT campo1, campo2 FROM miaTabella", conn);</pre>
<pre>SqlDataAdapter da = new SqlDataAdapter();</pre>
<pre>da.SelectCommand = command;</pre>
<pre>// definizione della dipendenza</pre>
<pre>SqlCacheDependecy dep = new SqlCacheDependency(cmd);</pre>
<pre>// caricamento dei dati</pre>
<pre>DataTable mioDataTable = new DataTable("nomeDataTable");</pre>
<pre>da.Fill(mioDataTable);</pre>
<pre>// aggiunta in cache</pre>
<pre>Cache.Insert("nome", nomeDataTable, dep);</pre>
<pre>}</pre>
<p><strong>Fino alla modifica della tabella</strong> mia Tabella , <strong>i dati risultati dalla query rimarranno nella cache e pertanto l&#8217;elemento non verrà rimosso.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/visual-c/cache-con-dipendenza-da-sql-server-2005-e-asp-net-2-0.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C# : Tipi di dati Nullable</title>
		<link>http://www.luigimelisi.com/programmazione/c-tipi-di-dati-nullable.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=c-tipi-di-dati-nullable</link>
		<comments>http://www.luigimelisi.com/programmazione/c-tipi-di-dati-nullable.html#comments</comments>
		<pubDate>Tue, 25 Aug 2009 06:57:03 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[.Net FrameWork]]></category>
		<category><![CDATA[Code Samples]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Luigi Melisi]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Tipi di dati]]></category>
		<category><![CDATA[Tipi di Riferimento]]></category>
		<category><![CDATA[Tipi di Valore]]></category>
		<category><![CDATA[Tipo Nullable]]></category>
		<category><![CDATA[Visual C#]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=94</guid>
		<description><![CDATA[In C# i  Tipi di Riferimento possono rappresentare un valore inesistente semplicmente assegnando alla variabile un riferimento Null, mentre i Tipi di Valore non possono rappresentare normalmente i valori Null. Ad esempio:    string s = null; / / OK, Tipo di riferimento    int i = null; / / errore di compilazione, Tipo valore non può]]></description>
			<content:encoded><![CDATA[<p>In <strong>C#</strong> i <strong> Tipi di Riferimento</strong> possono rappresentare un valore inesistente semplicmente assegnando alla variabile un riferimento Null, mentre i <strong>Tipi di Valore</strong> non possono rappresentare normalmente i valori Null. Ad esempio:</p>
<p>   <strong><span style="color: #3366ff;">string s = null; / / OK, Tipo di riferimento<br />
</span></strong>   <span style="color: #ff0000;">int i = null; / / errore di compilazione, Tipo valore non può essere null</span></p>
<p>Per rappresentare un valore Null in <strong> Tipi di Valore</strong>, è necessario utilizzare uno speciale costrutto chiamato <strong>Tipo Nullable</strong>. <span id="more-94"></span></p>
<p>Un<strong> Tipo Nullable</strong> è indicato con un tipo di valore seguito dal simbolo <strong>? </strong>:</p>
<p>  <strong> int? i = null;</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/c-tipi-di-dati-nullable.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sviluppare applicazioni per Facebook</title>
		<link>http://www.luigimelisi.com/facebook/sviluppare-applicazioni-per-facebook.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=sviluppare-applicazioni-per-facebook</link>
		<comments>http://www.luigimelisi.com/facebook/sviluppare-applicazioni-per-facebook.html#comments</comments>
		<pubDate>Mon, 10 Aug 2009 10:25:15 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Api]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Facebook Markup Language]]></category>
		<category><![CDATA[FBJS]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Luigi Melisi]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[Social Network]]></category>
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=52</guid>
		<description><![CDATA[Facebook è il Social Network più utilizzato del momento, in seguito al  rilascio delle sue API, è finalmente possibile creare applicazioni che sfruttano l&#8217;enorme base di dati di utenti, per fornire servizi e, perchè no, ricavarsi una nicchia di mercato proficua. Al Framework,  messo a disposizione da Facebook per creare applicazioni(basate su PHP), è stato affiancato il &#8216;Facebook]]></description>
			<content:encoded><![CDATA[<p><strong>Facebook</strong> è il S<strong>ocial Network</strong> più utilizzato del momento, in seguito al  rilascio delle sue <strong>API</strong>, è finalmente possibile <strong>creare applicazioni</strong> che sfruttano l&#8217;enorme base di dati di utenti, per fornire servizi e, perchè no, ricavarsi una nicchia di mercato proficua.<span id="more-52"></span></p>
<p>Al <strong>Framework, </strong> messo a disposizione da <strong>Facebook</strong> per creare applicazioni(basate su <strong>PHP)</strong>, è stato affiancato il <strong>&#8216;Facebook Markup Language&#8217; </strong>(un sottoinsieme di <strong>HTML</strong>) utilizzato per personalizzare il look&amp;feel delle applicazioni, ed  il <strong>FBJS</strong>, una libreria che permette di utilizzare <strong>Javascript</strong> all&#8217;interno delle proprie applicazioni. Le <strong>API di Facebook</strong> sono basate sul <strong>protocollo REST</strong>, ciò significa che i metodi delle <strong>API</strong> sono chiamati attraverso <strong>richieste fatte via GET o via POST ai server di Facebook</strong>, rendendo così le stesse <strong>compatibili con quasi tutti i linguaggi di programmazione</strong>.</p>
<p>Con la messa Online delle <strong>API</strong>, sono state già create dagli sviluppatori applicazioni, più o meno utili, che permettono agli utenti di fare praticamente qualsiasi cosa: compilare quiz e test, giocare ai video games &#8230;..</p>
<p>Molti sviluppatori, sfruttando la pubblicità all&#8217;interno delle applicazioni o attraverso la pubblicità sul <strong>network</strong>, addirittura ci guadagnano. Altri si sono lanciati nel settore <strong>sviluppando professionalmente applicazioni per Facebook</strong>. Si è aperta quindi un&#8217;altra nicchia di mercato, per il momento molto redditizia, per gli <strong>sviluppatori web</strong>.</p>
<p>Per tutti gli sviluppatori interessati, a questo indirizzo <a href="http://developers.facebook.com/">http://developers.facebook.com/</a>,  tutta la documentazione necessaria, gli esempi, forum e wiki sono a vostra disposizione in maniera del tutto gratuita.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/facebook/sviluppare-applicazioni-per-facebook.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Inserire un &#8220;A Capo&#8221; in una stringa usando c#</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/inserire-un-a-capo-in-una-stringa.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=inserire-un-a-capo-in-una-stringa</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/inserire-un-a-capo-in-una-stringa.html#comments</comments>
		<pubDate>Mon, 10 Aug 2009 10:13:03 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[.Net Framework]]></category>
		<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[.Net FrameWork]]></category>
		<category><![CDATA[Code Samples]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Luigi Melisi]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[Utils]]></category>
		<category><![CDATA[Visual C#]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=67</guid>
		<description><![CDATA[Per inserire un &#8220;A Capo&#8221; in una stringa con c# basta utilizzare System.Environment.NewLine in questo modo : this.myTextArea.Text += &#34;Prima Riga&#34; + System.Environment.NewLine + &#34;Seconda riga&#34;;]]></description>
			<content:encoded><![CDATA[<p>Per inserire un &#8220;A Capo&#8221; in una stringa con c# basta utilizzare <span><strong>System.Environment.NewLine</strong> in questo modo :</span><br />
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "pub-7844166093069047";
/* 234x60, creato 06/07/10 */
google_ad_slot = "2800042742";
google_ad_width = 234;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div></p>
<pre class="brush: csharp;">
this.myTextArea.Text += &quot;Prima Riga&quot; + System.Environment.NewLine + &quot;Seconda riga&quot;;
</pre>
<div class="clear-block"><div class="ad aligncenter"><script type="text/javascript"><!--
google_ad_client = "pub-7844166093069047";
/* 468x60, creato 11/06/10 */
google_ad_slot = "7113887670";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/inserire-un-a-capo-in-una-stringa.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Come Leggere un file con C#</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/visual-c/leggere-un-file.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=leggere-un-file</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/visual-c/leggere-un-file.html#comments</comments>
		<pubDate>Mon, 10 Aug 2009 10:04:41 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Programmazione]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Visual C#]]></category>
		<category><![CDATA[.Net FrameWork]]></category>
		<category><![CDATA[Build]]></category>
		<category><![CDATA[Code Samples]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Luigi Melisi]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[StringBuilder]]></category>
		<category><![CDATA[Utils]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=63</guid>
		<description><![CDATA[Come Leggere un file utilizzando Visual C#]]></description>
			<content:encoded><![CDATA[<p><span style="color: #0000ff; font-size: x-small;"><span style="color: #0000ff; font-size: x-small;"><span style="color: #0000ff; font-size: x-small;"><span style="font-size: x-small;"><span style="color: #000000;">Di seguito un semplice esempio di come <strong>leggere un file</strong> utilizzando <strong>C# </strong>e il namespace <strong>System.IO :<span id="more-63"></span></strong></span></span></span></span></span></p>
<pre class="brush: csharp;">
using System.IO;
String myFile = @&quot;C:\myfile.txt&quot;;
StringBuilder myBuilder = newStringBuilder();
using (StreamReader testo = new StreamReader(myFile))
{
         while(testo.Peek() &amp;gt;= 0)
         { 
                myBuilder.Append(testo.ReadLine);                
         }
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/visual-c/leggere-un-file.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Internet Explorer 8 per gli sviluppatori</title>
		<link>http://www.luigimelisi.com/microsoft/windows/internet-explorer-8/internet-explorer-8-per-gli-sviluppatori.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=internet-explorer-8-per-gli-sviluppatori</link>
		<comments>http://www.luigimelisi.com/microsoft/windows/internet-explorer-8/internet-explorer-8-per-gli-sviluppatori.html#comments</comments>
		<pubDate>Sat, 08 Aug 2009 16:35:21 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[Internet Explorer 8]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[aspx]]></category>
		<category><![CDATA[Developer]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[msdn]]></category>
		<category><![CDATA[storage]]></category>
		<category><![CDATA[sviluppatori]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=29</guid>
		<description><![CDATA[Internet explorer 8 si presenta carico di novità, dal migliorato supporto agli standard, ad un nuovo motore di rendering, passando per una serie di strumenti espressamente rivolti agli sviluppatori di siti web come  Developer ToolBar, AJAX Navigation, DOM Storage, Web Slice , tutti strumenti che i programmatori possono utilizzare per rendere più accattivante e interattiva l &#8216;]]></description>
			<content:encoded><![CDATA[<p>Internet explorer 8 si presenta carico di novità, dal migliorato supporto agli standard, ad un nuovo motore di rendering, passando per una serie di strumenti espressamente rivolti agli sviluppatori di siti web come  <strong><a title="Dowload Developer Toolbar" href="http://www.microsoft.com/downloadS/details.aspx?familyid=E59C3964-672D-4511-BB3E-2D5E1DB91038&amp;displaylang=en" target="_blank">Developer ToolBar</a>, <a title="Ajax Navigation Training" href="http://msdn.microsoft.com/en-us/ie/cc307215.aspx" target="_blank">AJAX Navigation</a>, <a title="Dom Storage" href="http://msdn.microsoft.com/en-us/library/cc197062(VS.85).aspx" target="_blank">DOM Storage</a>, <a title="Web Slice" href="http://www.microsoft.com/italy/windows/internet-explorer/features/web-slices.aspx" target="_blank">Web Slice </a></strong>, tutti strumenti che i programmatori possono utilizzare per rendere più accattivante e interattiva l &#8216; esperienza di navigazione.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/microsoft/windows/internet-explorer-8/internet-explorer-8-per-gli-sviluppatori.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Visual Studio 2010 and .Net Framework 4 Training Kit</title>
		<link>http://www.luigimelisi.com/programmazione/net_framework/4_0/microsoft-visual-studio-2010-and-net-framework-4-training-kit.html?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=microsoft-visual-studio-2010-and-net-framework-4-training-kit</link>
		<comments>http://www.luigimelisi.com/programmazione/net_framework/4_0/microsoft-visual-studio-2010-and-net-framework-4-training-kit.html#comments</comments>
		<pubDate>Wed, 05 Aug 2009 14:18:45 +0000</pubDate>
		<dc:creator>Luigi Melisi</dc:creator>
				<category><![CDATA[4.0]]></category>
		<category><![CDATA[.Net FrameWork]]></category>
		<category><![CDATA[ADO.Net]]></category>
		<category><![CDATA[Asp.Net]]></category>
		<category><![CDATA[aspx]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[E-Commerce]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Microsoft Visual Studio]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Source Code]]></category>
		<category><![CDATA[sviluppo]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[Training Kit]]></category>
		<category><![CDATA[Utils]]></category>
		<category><![CDATA[Visual C#]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.luigimelisi.com/?p=5</guid>
		<description><![CDATA[Training Kit di Microsoft sul Framework 4 e Visula Studio 2010]]></description>
			<content:encoded><![CDATA[<p>Su Microsoft Downloads trovate il <a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;FamilyID=752cb725-969b-4732-a383-ed5740f02e93#tm" target="_blank">Training Kit su Visual Studio 2010 e il .NET Framework 4</a> aggiornato alla Beta 1.</p>
<p>Di seguito un breve indice dei contenuti:</p>
<ul>
<li>C# 4.0</li>
<li>Visual Basic 10</li>
<li>F#</li>
<li>Parallel Extensions</li>
<li>Windows Communication Foundation</li>
<li>Windows Workflow</li>
<li>Windows Presentation Foundation</li>
<li>ASP.NET 4</li>
<li>Entity Framework</li>
<li>ADO.NET Data Services</li>
<li>Managed Extensibility Framework</li>
<li>Visual Studio Team System</li>
</ul>
<p>Il Training Kit è una risorsa veramente utile, per cui vi consiglio di dargli un&#8217;occhiata.</p>
<p>P.s. per chi se li fosse persi, esistono anche i Training Kit per per il <a href="http://www.microsoft.com/downloads/details.aspx?familyid=8BDAA836-0BBA-4393-94DB-6C3C4A0C98A1&amp;displaylang=en" target="_blank">Visual Studio 2008 e il .NET Framework 3.5</a> e per le <a href="http://www.microsoft.com/downloads/details.aspx?familyid=355C80E9-FDE0-4812-98B5-8A03F5874E96&amp;displaylang=en" target="_blank">novità aggiunte con la SP1</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.luigimelisi.com/programmazione/net_framework/4_0/microsoft-visual-studio-2010-and-net-framework-4-training-kit.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
