IvanF http://blogs.ugidotnet.org/IvanF/Default.aspx TFS, Visual Studio, 4ward e altro it-IT Ivan Fioravanti Subtext Version 2.6.0.0 IvanF http://blogs.ugidotnet.org/images/RSS2Image.gif http://blogs.ugidotnet.org/IvanF/Default.aspx 77 60 Problemi a ricevere parametri double e decimal con ASP.NET WebAPI C# http://blogs.ugidotnet.org/IvanF/archive/2012/03/15/problemi-a-ricevere-parametri-double-e-decimal-con-asp.net-webapi.aspx <p>Dopo aver perso una MAREA di tempo su questo problema, mi sembra giusto condividerlo col resto del mondo.</p> <p>Stavamo cercando di passare un semplice campo double a WebAPI Beta, ma ogni volta il valore nel controller era 0… Abbiamo provato di tutto e alla fine cos’era?</p> <p>Le <strong>Regional Options devono essere English</strong>!!! Altrimenti WebAPI usa la virgola come separatore decimale</p><img src="http://blogs.ugidotnet.org/IvanF/aggbug/100863.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2012/03/15/problemi-a-ricevere-parametri-double-e-decimal-con-asp.net-webapi.aspx Thu, 15 Mar 2012 16:20:40 GMT http://blogs.ugidotnet.org/IvanF/archive/2012/03/15/problemi-a-ricevere-parametri-double-e-decimal-con-asp.net-webapi.aspx#feedback 2 http://blogs.ugidotnet.org/IvanF/comments/commentRss/100863.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/100863.aspx VS 2010: Aggiungere Work Item ai Model Diagram TFS http://blogs.ugidotnet.org/IvanF/archive/2012/03/01/vs-2010-aggiungere-work-item-ai-model-diagram.aspx <p>Domanda: “Posso aggiungere dei work item ai modelli generati con Visual Studio, tipo Sequence Diagram? Perché mi hanno detto che è possibile, ma non capisco come.”</p> <p>Risposta: “Sì, ma va installato il Feature Pack 2 da qui: <a href="http://msdn.microsoft.com/en-us/vstudio/ff655021.aspx">http://msdn.microsoft.com/en-us/vstudio/ff655021.aspx</a>”</p> <p>Una volta installato vengono aggiunte delle voci nel menù contestuale degli elementi come da screenshot sotto:</p> <p><a href="http://blogs.ugidotnet.org/images/blogs_ugidotnet_org/IvanF/Windows-Live-Writer/46d49687d3e9_E581/image_thumb%5B1%5D_2.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image_thumb[1]" border="0" alt="image_thumb[1]" src="http://blogs.ugidotnet.org/images/blogs_ugidotnet_org/IvanF/Windows-Live-Writer/46d49687d3e9_E581/image_thumb%5B1%5D_thumb.png" width="620" height="284" /></a></p> <p>Spero serva a qualcuno,</p> <p>Ivan</p><img src="http://blogs.ugidotnet.org/IvanF/aggbug/100819.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2012/03/01/vs-2010-aggiungere-work-item-ai-model-diagram.aspx Thu, 01 Mar 2012 17:32:45 GMT http://blogs.ugidotnet.org/IvanF/archive/2012/03/01/vs-2010-aggiungere-work-item-ai-model-diagram.aspx#feedback http://blogs.ugidotnet.org/IvanF/comments/commentRss/100819.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/100819.aspx System.Decimal non si sposa bene coi NoSQL Azure http://blogs.ugidotnet.org/IvanF/archive/2011/12/02/system.decimal-non-si-sposa-bene-coi-nosql.aspx <p>Eccoci ad un altro problemino da tener presente quando si va sul cloud o più in general su vari motori NoSQL: System.Decimal non si sposa molto bene.</p> <p>I 3 motori scelti per il test drive sono:</p> <ul> <li>Azure Table Storage </li> <li>Amazon SimpleDB </li> <li>MongoDB </li> </ul> <p>Tutti e tre non supportano il tipo System.Decimal, quindi se volete salvare valute, cambi, grandi valori con virgola, dovrete ingegnarvi un po’. Noi per ora abbiamo usato il tipo double per le prove, durante le comunicazioni con terminali di pagamento reali solitamente si usa il protocollo ISO8583 dove il numero è diviso in due parti:</p> <ul> <li>Amount: l’ammontare completo parte intera e mantissa senza virgola (esempio 100,91 è 10091) </li> <li>MinorUnit: numero di cifre decimali (esempio su 100,91 è 2) </li> </ul> <p>Di seguito i tipi supportati dai vari sistemi:</p> <table border="0" cellspacing="0" cellpadding="2" width="401"><tbody> <tr> <td width="102" align="center"><strong>Tipo</strong></td> <td width="97" align="center"><strong>Azure Table Storage</strong></td> <td width="100" align="center"><strong>Amazon SimpleDB</strong></td> <td width="100" align="center"><strong>MongoDB</strong></td> </tr> <tr> <td valign="top" width="102">byte[]</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">bool</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">DateTime</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">double</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">Guid</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">Int32 o int</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">Int64 o long</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">String</td> <td width="97" align="center">X</td> <td valign="top" width="100" align="center">X (max 1024 bytes)</td> <td valign="top" width="100" align="center">X</td> </tr> <tr> <td valign="top" width="102">regex</td> <td width="97" align="center"> </td> <td valign="top" width="100" align="center"> </td> <td valign="top" width="100" align="center">X</td> </tr> </tbody></table> <p> </p> <p>Da notare che Amazon ha scelto un’implementazione tecnica semplice per il suo NoSQL, che però comporta il fatto che tutti I valori vengano salvati come stringhe con una dimensione massima limitata e la ricerca è lessicografica il che significa che per SimpleDB 10 viene prima di 2, quindi bisogna porre un po’ di attenzione in più: <a href="http://aws.amazon.com/articles/1232">http://aws.amazon.com/articles/1232</a></p> <p>Nota: è sempre possibile utilizzare un handler per gestire l’evento di Reading/Writing durante l’interazione con i NoSQL sopra. Magari ne parleremo in un post futuro.</p> <p>Alla prossima!</p><img src="http://blogs.ugidotnet.org/IvanF/aggbug/100594.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/12/02/system.decimal-non-si-sposa-bene-coi-nosql.aspx Fri, 02 Dec 2011 17:30:00 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/12/02/system.decimal-non-si-sposa-bene-coi-nosql.aspx#feedback 4 http://blogs.ugidotnet.org/IvanF/comments/commentRss/100594.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/100594.aspx Azure Queue Service: la dimensione massima di un messaggio &egrave; 8KB o 64KB? Azure http://blogs.ugidotnet.org/IvanF/archive/2011/11/29/azure-queue-service-la-dimensione-massima-di-un-messaggio-egrave.aspx <p>Eccoci con un altro piccolo incidente di percorso: la dimensione massima delle Azure Queue è stata portata da 8KB a 64KB dalla versione 2011-08-18 in poi. Fantastico! Un po’ più di spazio disponibile va benone, specialmente su messaggi con molti metadati da inviare.</p> <p>Se però come me provate a creare un messaggio con una dimensione di 10KB usando l’SDK 1.5 (Ottobre 2011) riceverete un bell’errore. </p> <p>A questo punto per capire esattamente dove fosse il problema mi sono armato di JustDecompile (visto che il buon vecchio Reflector non è più free, proviamo quello di Telerik) e ho decompilato il CloudQueueMessage da Microsoft.WindowsAzure.StorageClient.dll e… sorpresa! Nel costruttore c’è un bel limite massimo hardcoded a 8192 byte: </p> <div id="codeSnippetWrapper"> <div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: white; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px">CloudQueueMessage.MaxMessageSize = (<span style="color: #0000ff">long</span>)8192;</pre> <!--CRLF--></div> </div> <p>Come risolvere il problema? Scaricando la versione 1.6 dell’SDK di Azure dove le librerie client sono state aggiornate coi nuovi limiti e decompilando la stessa dll adesso si ha: </p> <div id="codeSnippetWrapper"> <div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: white; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px">CloudQueueMessage.MaxMessageSize = (<span style="color: #0000ff">long</span>)65536;</pre> <!--CRLF--></div> </div><img src="http://blogs.ugidotnet.org/IvanF/aggbug/100574.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/11/29/azure-queue-service-la-dimensione-massima-di-un-messaggio-egrave.aspx Tue, 29 Nov 2011 11:50:51 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/11/29/azure-queue-service-la-dimensione-massima-di-un-messaggio-egrave.aspx#feedback http://blogs.ugidotnet.org/IvanF/comments/commentRss/100574.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/100574.aspx Azure Table Storage e l&rsquo;operatore FirstOrDefault Azure http://blogs.ugidotnet.org/IvanF/archive/2011/11/29/azure-table-storage-e-lrsquooperatore-firstordefault.aspx <p>Oggi ho perso l'intero pomeriggio a lottare contro questo problema, quindi voglio condividere la cosa in modo da evitare ad altri di spaccarsi la testa sulla stessa cosa. <br />Stavo eseguendo una query semplice sul Table Storage di Azure utilizzando PartitionKey e RowKey per recuperare una specifica entità in una tabella specifica (es.: http://127.0.0.1:10002/devstoreaccount1/Spaceship (PartitionKey = '380 ',RowKey = '1234 ')). <br />Durante i test, il primo scenario era dove non esisteva entità con PK e RK date e ho usato una semplice query che termina con l'operatore FirstOrDefault tipo:</p> <div id="codeSnippetWrapper"> <div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: white; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px">TableRepository.FindWhere (p =&gt; p.PartitionKey == entity.Spaceship.CountryCode.ToString () &amp; &amp;</pre> <!--CRLF--> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px">. p.RowKey == entity.SerialNumber) FirstOrDefault ();</pre> <!--CRLF--></div> </div> <p>e mi aspettavo u null, ma in realtà ho cominciato a ricevere errori 404 col seguente dettaglio:  </p> <div id="codeSnippetWrapper"> <div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px" id="codeSnippet"> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: white; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px"><span style="color: #0000ff">&lt;</span><span style="color: #800000">error</span> <span style="color: #ff0000">xmlns</span><span style="color: #0000ff">="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"</span><span style="color: #0000ff">&gt;</span> </pre> <!--CRLF--> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px"> <span style="color: #0000ff">&lt;</span><span style="color: #800000">code</span><span style="color: #0000ff">&gt;</span>ResourceNotFound<span style="color: #0000ff">&lt;/</span><span style="color: #800000">code</span><span style="color: #0000ff">&gt;</span> </pre> <!--CRLF--> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: white; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px"> <span style="color: #0000ff">&lt;</span><span style="color: #800000">message</span> <span style="color: #ff0000">xml:lang</span><span style="color: #0000ff">="en-US"</span><span style="color: #0000ff">&gt;</span>The specified resource does not exist.<span style="color: #0000ff">&lt;/</span><span style="color: #800000">message</span><span style="color: #0000ff">&gt;</span> </pre> <!--CRLF--> <pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; background-color: #f4f4f4; margin: 0em; border-left-style: none; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; border-right-style: none; font-size: 8pt; overflow: visible; padding-top: 0px"><span style="color: #0000ff">&lt;/</span><span style="color: #800000">error</span><span style="color: #0000ff">&gt;</span></pre> <!--CRLF--></div> Dopo diverse ore alle prese con vari test ho scoperto queste “Perle di Saggezza Azure”: <br />- Internet Explorer non può essere utilizzato per eseguire query direttamente su Table Storage <br />- È necessario impostare <strong>IgnoreResourceNotFoundException = true</strong> nel TableServiceContext per ricevere null quando un'entità non viene trovata, invece di ricevere un errore 404</div><img src="http://blogs.ugidotnet.org/IvanF/aggbug/100571.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/11/29/azure-table-storage-e-lrsquooperatore-firstordefault.aspx Tue, 29 Nov 2011 09:56:00 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/11/29/azure-table-storage-e-lrsquooperatore-firstordefault.aspx#feedback http://blogs.ugidotnet.org/IvanF/comments/commentRss/100571.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/100571.aspx Inizia l&rsquo;avventura col cloud: prima Microsoft Azure e poi Amazon AWS Azure http://blogs.ugidotnet.org/IvanF/archive/2011/11/28/inizia-lrsquoavventura-col-cloud-prima-microsoft-azure-e-poi-amazon.aspx <p>Finalmente siamo partiti! Un bel Proof of Concept su Azure per una bella architettura distribuita Cloud – OnPremise. Prima si prova Azure, poi AWS.</p> <p>Cercherò di postare un po’ di “Appunti di viaggio” di quest’avventura con problemi, vantaggi, pregi e difetti, performance individuati in modo da poter aiutare futuri avventurieri.</p> <p>Proveremo di tutto di più:</p> <ul> <li>Azure Table Storage – SimpleDB: come NoSQL per salvare grandi quantità di dati </li> <li>Blob Storage – S3: per salvare dati di grandi dimensioni </li> <li>Azure Queue – SQS: per la comunicazione tra i diversi ruoli sul cloud all’interno della stessa Region </li> <li>SQL Azure – MySql: per la parte relazione sul cloud </li> <li>SQL Data Sync: per sincronizzare database distribuiti cloud – OnPremise </li> <li>Service Bus – SNS+SQS: per utilizzare il pattern publish/subscribe per la distribuzione di dati tra region e OnPremise </li> <li>Traffice Manager: per bilanciare automaticamente le chiamate dei client alla region Azure più vicina </li> <li>MongoDB: ci saranno anche esperimenti con MongoDB per confrontare un NoSQL Document Based con I key-value offerti da Microsoft e Amazon</li> <li>Altro: MEF, Automapper, AppFabric, Caching, TPL </li> </ul> <p>Si parte!</p><img src="http://blogs.ugidotnet.org/IvanF/aggbug/100568.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/11/28/inizia-lrsquoavventura-col-cloud-prima-microsoft-azure-e-poi-amazon.aspx Mon, 28 Nov 2011 23:09:01 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/11/28/inizia-lrsquoavventura-col-cloud-prima-microsoft-azure-e-poi-amazon.aspx#feedback http://blogs.ugidotnet.org/IvanF/comments/commentRss/100568.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/100568.aspx Errore TF208002 su editing Product Planning.xlsm TFS Advanced TFS http://blogs.ugidotnet.org/IvanF/archive/2011/11/15/errore-tf208002-su-editing-product-planning.xlsm.aspx <p>Mi si era corrotto il Product Planning.xlsm del progetto. In apertura mi dava l’errore: <em>TF208002: The name that you specified for the column header is a reserved name for this work item list. Choose a different name and try again.</em></p> <p>Chiaramente le ho provate tutte ma il file era andato <img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-sadsmile" alt="Sad smile" src="http://blogs.ugidotnet.org/images/blogs_ugidotnet_org/IvanF/Windows-Live-Writer/Errore-TF280002_10329/wlEmoticon-sadsmile_2.png" /> </p> <p>Soluzione: </p> <ul> <li>prendete il file <strong>Product Planning.xlsm</strong> direttamente dal Process Template Agile 5 di Microsoft (MSF for Agile Software Development v5.0\Windows SharePoint Services\Shared Documents\Project Management) e copiatelo sul Project Portal del vostro progetto. </li> <li>Apritelo e premete<strong> Edit Workbook</strong> </li> <li>Andate sul tab <strong>Team</strong> e selezionate <strong>Configure</strong> –&gt; <strong>Server Connection</strong> </li> <li>Premete <strong>OK</strong> sul popup </li> <li>Selezionate il vostro progetto e premete <strong>Connect</strong> </li> <li>Premete <strong>New List</strong> e selezionate la query <strong>Product Planning</strong> premendo su <strong>OK</strong> </li> <li>Salvate e avete di nuovo il vostro file!!! </li> </ul><img src="http://blogs.ugidotnet.org/IvanF/aggbug/100527.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/11/15/errore-tf208002-su-editing-product-planning.xlsm.aspx Tue, 15 Nov 2011 19:32:31 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/11/15/errore-tf208002-su-editing-product-planning.xlsm.aspx#feedback http://blogs.ugidotnet.org/IvanF/comments/commentRss/100527.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/100527.aspx Sono diventato MCT! Training http://blogs.ugidotnet.org/IvanF/archive/2011/03/20/sono-diventato-mct.aspx <p>Ce l’ho fatta! Ci ho messo un po’, ma sono riuscito a diventare Microsoft Certified Trainer! E lunedì terrò il mio primo corso da docente: MOC 50430: Administering Team Foundation Server 2010!</p><img src="http://blogs.ugidotnet.org/IvanF/aggbug/99854.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/03/20/sono-diventato-mct.aspx Sun, 20 Mar 2011 10:54:00 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/03/20/sono-diventato-mct.aspx#feedback 5 http://blogs.ugidotnet.org/IvanF/comments/commentRss/99854.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/99854.aspx Team Foundation Server 2010 SP1 Finale TFS http://blogs.ugidotnet.org/IvanF/archive/2011/03/09/anche-team-foundation-server-2010-finale.aspx <p>Non dimentichiamoci che è stato rilasciato l’SP1 finale anche per TFS 2010, che contiene un lungo elenco di bug fix. </p> <p>Per maggiori info: <a href="http://support.microsoft.com/kb/2182621">http://support.microsoft.com/kb/2182621</a></p><img src="http://blogs.ugidotnet.org/IvanF/aggbug/99795.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/03/09/anche-team-foundation-server-2010-finale.aspx Wed, 09 Mar 2011 00:05:59 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/03/09/anche-team-foundation-server-2010-finale.aspx#feedback http://blogs.ugidotnet.org/IvanF/comments/commentRss/99795.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/99795.aspx Tutto pronto per gli ALM Days di Roma e Milano TFS http://blogs.ugidotnet.org/IvanF/archive/2011/01/04/tutto-pronto-per-gli-alm-days-di-roma-e-milano.aspx <p>Ci siamo quasi gli ALM Days di Roma (18/1) e Milano (20/1) si avvicinano. La mia sessione sarà … </p> <p align="center"><img style="display: block; float: none; margin-left: auto; margin-right: auto" src="http://l19.sphotos.l3.fbcdn.net/hphotos-l3-snc6/hs031.snc6/166194_477726422953_161420532953_5580772_5259350_n.jpg" width="400" height="300" /></p> <p> </p> <p>Per registrarsi:</p> <p align="center"><a href="http://www.microsoft.com/italy/eventi/almday/index.aspx"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="feature_msdn (2)" border="0" alt="feature_msdn (2)" src="http://blogs.ugidotnet.org/images/blogs_ugidotnet_org/IvanF/Windows-Live-Writer/360a036c6e21_E36C/feature_msdn%20(2)_57609e90-7600-49bf-bc6c-c933f975fbf7.jpg" width="216" height="117" /></a></p><img src="http://blogs.ugidotnet.org/IvanF/aggbug/99598.aspx" width="1" height="1" /> Ivan Fioravanti http://blogs.ugidotnet.org/IvanF/archive/2011/01/04/tutto-pronto-per-gli-alm-days-di-roma-e-milano.aspx Tue, 04 Jan 2011 17:17:50 GMT http://blogs.ugidotnet.org/IvanF/archive/2011/01/04/tutto-pronto-per-gli-alm-days-di-roma-e-milano.aspx#feedback http://blogs.ugidotnet.org/IvanF/comments/commentRss/99598.aspx http://blogs.ugidotnet.org/IvanF/services/trackbacks/99598.aspx