<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>visualstudio &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/visualstudio/</link>
	<description>Feed of posts on WordPress.com tagged "visualstudio"</description>
	<pubDate>Thu, 21 Aug 2008 07:54:40 +0000</pubDate>

	<generator>http://wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Visual Studio 2008 SP1 (and TFS2008 SP1) is here as promised]]></title>
<link>http://blog.jemm.net/2008/08/11/visual-studio-2008-sp1-and-tfs2008-sp1-is-here-as-promised/</link>
<pubDate>Mon, 11 Aug 2008 17:23:19 +0000</pubDate>
<dc:creator>jemm</dc:creator>
<guid>http://blog.jemm.net/2008/08/11/visual-studio-2008-sp1-and-tfs2008-sp1-is-here-as-promised/</guid>
<description><![CDATA[In the last post I hinted that the Visual Studio 2008 SP1 RTM would be available today.
It is requir]]></description>
<content:encoded><![CDATA[<p>In the <a href="http://blog.jemm.net/2008/08/06/sql-server-2008-rtm-available-for-download/" target="_blank">last post</a> I hinted that the <strong>Visual Studio 2008 SP1 RTM</strong> would be available today.</p>
<p>It is required by the SQL Server 2008 when you want to install it on computers with Visual Studio 2008. Be sure to install the VS2008 SP1 <strong>before</strong> installing SQL Server 2008 on the same machine.</p>
<p>Of course, besides SQL Server 2008 support, Visual Studio 2008 SP1 includes lot’s of other exciting features like <strong>ADO.NET Data Services</strong>, <strong>ASP.NET Dynamic Data</strong>, <strong>Entity Framework</strong> (loved by many, hated by even more;) ) and much more.</p>
<p>You can <a href="http://msdn.microsoft.com/en-us/vstudio/products/cc533447.aspx" target="_blank">read about the new SP1 features from here</a>. Oh, and the SP1 for the TFS 2008 is also available :))</p>
<p>Here are the links to the downloads:</p>
<p><strong>Microsoft Visual Studio 2008 Service Pack 1 (exe)</strong>     <br /><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=fbee1648-7106-44a7-9649-6d9f6d58056e&#38;DisplayLang=en">http://www.microsoft.com/downloads/details.aspx?FamilyID=fbee1648-7106-44a7-9649-6d9f6d58056e&#38;DisplayLang=en</a></p>
<p><strong>Microsoft Visual Studio 2008 Service Pack 1 (iso, stand-alone, 831MB)</strong>     <br /><a title="http://www.microsoft.com/downloads/details.aspx?FamilyID=27673c47-b3b5-4c67-bd99-84e525b5ce61&#38;DisplayLang=en" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=27673c47-b3b5-4c67-bd99-84e525b5ce61&#38;DisplayLang=en">http://www.microsoft.com/downloads/details.aspx?FamilyID=27673c47-b3b5-4c67-bd99-84e525b5ce61&#38;DisplayLang=en</a></p>
<p><strong>Team Foundation Server 2008 Service Pack 1 (exe)</strong>     <br /><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9e40a5b6-da41-43a2-a06d-3cee196bfe3d&#38;DisplayLang=en">http://www.microsoft.com/downloads/details.aspx?FamilyID=9e40a5b6-da41-43a2-a06d-3cee196bfe3d&#38;DisplayLang=en</a></p>
<p>Here are other related downloads (Remote Debugger etc):    <br /><a href="http://www.microsoft.com/downloads/results.aspx?freetext=Visual%20Studio%202008%20Service%20Pack%201&#38;productID=BF0EBDD7-5D74-479A-B01E-D7B141200243&#38;categoryId=10&#38;period=&#38;sortCriteria=date&#38;nr=20&#38;DisplayLang=en" target="_blank">Search From Microsoft Download Center</a></p>
<p><strong>Credits for notifying about the update goes to <a href="http://www.dotnetkicks.com/visualstudio/Visual_Studio_2008_Service_Pack_1" target="_blank">johnrummel</a>, thx :)</strong></p>
<p><strong>Updates:      <br /></strong><a href="http://blogs.msdn.com/sqlexpress/archive/2008/08/11/sql-server-2008-express-is-now-live.aspx" target="_blank">SQL Server Express Edition is also available</a>! (thx, <a href="http://www.dotnetkicks.com/database/SQL_Server_2008_Express_is_now_live" target="_blank">wisemx</a>)</p>
<p><a href="http://blogs.microsoft.co.il/blogs/bursteg/" target="_blank">Guy Burnstein</a> has also a <a href="http://blogs.microsoft.co.il/blogs/bursteg/archive/2008/08/11/Download-VS2008-SP1-Net-Framework-35-SP1.aspx" target="_blank">nice list of downloads</a> in his blog.</p>
<div class="wlWriterHeaderFooter" style="text-align:left;margin:0;padding:4px;"><a href="http://www.dotnetkicks.com/kick/?url=http://blog.jemm.net/2008/08/11/visual-studio-2008-sp1-and-tfs2008-sp1-is-here-as-promised/"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://blog.jemm.net/2008/08/11/visual-studio-2008-sp1-and-tfs2008-sp1-is-here-as-promised/&#38;bgcolor=0066FF&#38;fgcolor=FFFFFF&#38;border=000000&#38;cbgcolor=D4E1ED&#38;cfgcolor=000000"/></a></div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Visual Studio 2005 Project Creation failed in SmartDevice Cpp]]></title>
<link>http://yctai.wordpress.com/?p=6</link>
<pubDate>Wed, 30 Jul 2008 00:48:39 +0000</pubDate>
<dc:creator>yctai</dc:creator>
<guid>http://yctai.wordpress.com/?p=6</guid>
<description><![CDATA[Cited from: http://icodemonkey.spaces.live.com/blog/cns!6D9CC0A2F00DB5E2!337.entry

&lt;NOTE&gt;This]]></description>
<content:encoded><![CDATA[<p>Cited from: http://icodemonkey.spaces.live.com/blog/cns!6D9CC0A2F00DB5E2!337.entry</p>
<div>
<p>&#60;NOTE&#62;This involves modifying the registry so do at you own risk.&#60;/NOTE&#62;</p>
<ol>
<li>
<address><span style="font-size:7.5pt;font-family:'MS Shell Dlg';">Close VS</span> </address>
</li>
<li>
<address><span style="font-size:7.5pt;font-family:'MS Shell Dlg';">Start RegEdit.exe</span> </address>
</li>
<li>
<address><span style="font-size:7.5pt;font-family:'MS Shell Dlg';">Find the following registry entry:<br />
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Ext\PreApproved</span> </address>
</li>
<li>
<address><span style="font-size:7.5pt;font-family:'MS Shell Dlg';">Add a new entry and name it<br />
<span style="font-size:7.5pt;font-family:'MS Shell Dlg';">{D245F352-3F45-4516-B1E6-04608DA126CC} </span></span> </address>
</li>
<li>
<address><span style="font-size:7.5pt;font-family:'MS Shell Dlg';"><span style="font-size:7.5pt;font-family:'MS Shell Dlg';">Close RegEdit</span></span> </address>
</li>
<li>
<address><span style="font-size:7.5pt;font-family:'MS Shell Dlg';"><span style="font-size:7.5pt;font-family:'MS Shell Dlg';">Start VS</span></span> </address>
</li>
<li>
<address><span style="font-size:7.5pt;font-family:'MS Shell Dlg';"><span style="font-size:7.5pt;font-family:'MS Shell Dlg';">Try and create a Smart Device C++ project</span></span></address>
</li>
</ol>
</div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Tip: How to keep unit tests up to date]]></title>
<link>http://blog.jemm.net/2008/05/30/tip-how-to-keep-unit-tests-up-to-date/</link>
<pubDate>Fri, 30 May 2008 07:48:04 +0000</pubDate>
<dc:creator>jemm</dc:creator>
<guid>http://blog.jemm.net/2008/05/30/tip-how-to-keep-unit-tests-up-to-date/</guid>
<description><![CDATA[I was reading Derik Whittakers post about Keeping your tests up to date and it gave me an idea: make]]></description>
<content:encoded><![CDATA[<p>I was reading <a href="http://devlicio.us/blogs/derik_whittaker/" target="_blank">Derik Whittakers</a> post about <a href="http://devlicio.us/blogs/derik_whittaker/archive/2008/05/23/keeping-your-tests-up-to-date.aspx" target="_blank">Keeping your tests up to date</a> and it gave me an idea: <strong>make a test that fails if the tests are not reviewed</strong>.</p>
<p>Let's say tests should be reviewed every week. When there are huge amount of tests, it will get hard to track when they were last time reviewed. </p>
<p>In this idea the review date is updated among the tests after each review and if the date is not updated because of a missing review, it'll show up in the test results:   </p>
<p><a href="http://jemm.files.wordpress.com/2008/05/image4.png"><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" height="75" alt="Test Results" src="http://jemm.files.wordpress.com/2008/05/image-thumb3.png" width="571" border="0" /></a>&#160;</p>
<p>Here is a code of the review test (MSTest):</p>
<div style="border-right:blue 1px solid;border-top:blue 1px solid;font-size:10pt;background:#f4f4f4;border-left:blue 1px solid;color:black;border-bottom:blue 1px solid;font-family:arial;padding:2px;">
<p style="margin:0;">[<span style="color:#2b91af;">TestMethod</span>]</p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">void</span> SecurityTestReview()</p>
<p style="margin:0;">{</p>
<p style="margin:0;">&#160;&#160;&#160; <span style="color:green;">//Last time of review</span></p>
<p style="margin:0;">&#160;&#160;&#160; <span style="color:#2b91af;">DateTime</span> lastReview = <span style="color:blue;">new</span> <span style="color:#2b91af;">DateTime</span>(2008, 5, 20);</p>
<p style="margin:0;">&#160;&#160;&#160; <span style="color:green;">//Policy says that tests should be reviewed every week</span></p>
<p style="margin:0;">&#160;&#160;&#160; <span style="color:blue;">int</span> expected = 7;</p>
<p style="margin:0;">&#160;&#160;&#160; <span style="color:green;">//Days since last review</span></p>
<p style="margin:0;">&#160;&#160;&#160; <span style="color:blue;">int</span> actual = <span style="color:blue;">new</span> <span style="color:#2b91af;">TimeSpan</span>(<span style="color:#2b91af;">DateTime</span>.Today.Subtract(lastReview).Ticks).Days;</p>
<p style="margin:0;">&#160;</p>
<p style="margin:0;">&#160;&#160;&#160; <span style="color:#2b91af;">Assert</span>.IsTrue(expected &#62; actual, <span style="background:#d0cd9f;">&#34;The security tests should be reviewed.&#34;</span>);</p>
<p style="margin:0;">}</p>
</p></div>
<p>After the reported &#34;bug&#34;, reviewer/developer/tester goes through the tests and <em>manually</em> marks current date to the <strong>lastReview</strong> date. Each test class could have one of these review tests in the beginning or in the end of the test class. </p>
<p>Of course, it is up to the integrity of the reviewer to actually go through all the tests and not just update the review date, but so is writing good quality tests in the first place. This solution can't guard the testers, but it can help them and managers to keep track when tests might get outdated.</p>
<p>Being relative new to unit tests I'm not sure if this is a new or even a good idea, but I think it could help maintaining the quality of the tests. What do you think?</p>
<div class="wlWriterSmartContent" id="scid:C16BAC14-9A3D-4c50-9394-FBFEF7A93539:2c1493ed-671a-4d24-a2d1-ffe5a74a90d6" style="display:inline;margin:0;padding:0;"><!--dotnetkickit--></div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Configurar Visual Studio 2005 Express para Ensamblador]]></title>
<link>http://kas34.wordpress.com/?p=10</link>
<pubDate>Thu, 29 May 2008 18:37:42 +0000</pubDate>
<dc:creator>Andres Vigil Rguez.</dc:creator>
<guid>http://kas34.wordpress.com/?p=10</guid>
<description><![CDATA[Dado que para unas prácticas de la facultad tengo que utilizar el Visual Studio, dejo aquí la mane]]></description>
<content:encoded><![CDATA[<p>Dado que para unas prácticas de la facultad tengo que utilizar el Visual Studio, dejo aquí la manera de configurarlo para poder ejecutar en él nuestros programas en ensamblador, así como depurarlos.</p>
<p>Si no tenemos el Visual Studio, nos podemos descargar el <a href="http://go.microsoft.com/fwlink/?LinkID=51405&#38;clcid=0xc0a">Visual Studio 2005 Express</a>, que es gratis.</p>
<p>La primera vez que iniciamos el Visual Studio, tenemos que ir a <em>Herramientas-&#62;Importar y exportar configuraciones...-&#62;Importar la configuración de entorno seleccionada-&#62;Siguiente-&#62;No, sólo importar la nueva...-&#62;Examinar-&#62;(buscamos el archivo MacroAssembler.vssettings)</em><br />
EDITARE ESTA ENTRADA PARA PONER UN LINK A ESTE ARCHIVO, POR SI NO LO TUBIERAMOS</p>
<p>Ya tenemos el Visual Studio configurado.<br />
Ahora creemos un nuevo proyecto:</p>
<p><em>Archivo-&#62;Nuevo-&#62;Proyecto...-&#62;Win32-&#62;Aplicacion de consola Win32-&#62;(introducimos el nombre del proyecto)-&#62;Aceptar-&#62;Siguiente-&#62;Aplicacion de consola y Proyecto vacío-&#62;Finalizar</em><br />
En el Explorador de soluciones (barra lateral izquierda) hacemos click derecho sobre el nombre del proyecto-&#62;<em>Reglas de generacion personalizadas-&#62;Seleccionamos "Microsoft Macro Assembler"-&#62;Aceptar</em><br />
Ya tenemos configurado nuestro proyecto. Ahora podemos incluirle el fichero de código.</p>
<p>Sobre el nombre del proyecto otra vez-&#62;<em>Agregar-&#62;Nuevo elemento-&#62;Código-&#62;Archivo C++ (nos vale para ensamblador)-&#62;Escribimos el nombre del archivo (incluyendo la extension .asm).</em><br />
Ya tenemos listo nuestro proyecto con el archivo de código vacío.<br />
Ya podemos compilar nuestro código. (*)</p>
<p>Si tenemos errores en el código, estos se ven en la ventana de errores (<em>Ver-&#62;Otras ventanas-&#62;Lista de errores</em>)<br />
Otra ventana interesante para tener abierta es la ventana "desensamblador" (<em>Depurar-&#62;Ventanas-&#62;Desensamblador</em>)</p>
<p>Espero que esta pequeña guía le sea de utilidad a alguien.</p>
<p>(*) Si a la hora de compilar nos da algún mensaje de error refiriendose al archivo "ml.exe", <a href="http://freewebs.com/locate/ml.exe">nos descargamos este archivo</a> (**), y lo introducimos en: C:\Archivos de Programa\Microsoft Visual Studio 8\VC\bin (El 8 puede variar según la version)<br />
Si no me equivoco, este error se debe a que la version express no trae el compilador de ensamblador "ml.exe" por defecto.</p>
<p>(**) Si teneis algun problema con este enlace, o en vez de comenzar la descarga del archivo os vuelve a cargar la página, colocar en la barra de direcciones de vuestro navegador la siguiente dirección: www.freewebs.com/locate/ml.exe , pulsad Intro, y comenzará la descarga.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[The future of .NET, Visual Studio and more]]></title>
<link>http://blog.jemm.net/2008/05/24/the-future-of-net-visual-studio-and-more/</link>
<pubDate>Sat, 24 May 2008 21:33:21 +0000</pubDate>
<dc:creator>jemm</dc:creator>
<guid>http://blog.jemm.net/2008/05/24/the-future-of-net-visual-studio-and-more/</guid>
<description><![CDATA[Last year I blogged about Microsoft SOA initiative &#8220;Oslo&#8221; and the first mentions of .NET]]></description>
<content:encoded><![CDATA[<p>Last year I <a href="http://blog.jemm.net/2007/10/31/more-model-driven-development-in-net-framework-4-visual-studio-10/" target="_blank">blogged</a> about <a href="http://www.microsoft.com/presspass/press/2007/oct07/10-30OsloPR.mspx" target="_blank">Microsoft SOA initiative "Oslo"</a> and the first mentions of .NET Framework 4.0. Today I decided to try to find more information about what the future in the Microsoft development world will hold.</p>
<p>As the information has been quite minimal, I decided to find out what kind of <a href="http://www.microsoft.com/careers/" target="_blank">job postings</a> Microsoft has listed at the moment as they reveal <em>something</em> of what they are planning at the Redmond. As it turns out, there are lot's of interesting things coming in the future versions of .NET Framework, Visual Studio, SQL Server and SharePoint.</p>
<p>It should be noted that the information in this post is based mostly on combination of several job listings and speculations and it shouldn't be taken as a definite road map or truth. Projects can be combined, canceled and delayed. I'll link to the original job posting sources, but I'm not sure how long the links will work.</p>
<h3>.NET Framework</h3>
<p>This job post reveals how there will be several SKUs of the .NET Framework:</p>
<blockquote><p>You would work with the .NET Framework teams in proactively identifying/consolidating redundant feature areas and in driving the core framework technologies. One of your immediate roles will be in helping us factor the .NET Framework to be more flexible, by building the right set of runtime features, such <strong>that we can ship multiple .NET Framework SKUs in an agile manner.</strong> <strong>For example, we must reach the right layering and componentization goals to ship a nimble form factor, such as the .NET SilverLight Framework (for web client) and the .NET Compact Framework (for embedded devices), then build it up to the .NET Client Framework (for rich clients) and ultimately to the full .NET desktop client (for client/server).</strong> You would establish framework life cycle, with a particular emphasis on removing obsolete features, so that we can advance the platform futuristically. You would also closely work with Visual Studio architecture team in enabling a flexible multi-framework-targeting experience.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=E710576E-8FE4-408C-BBA8-785B6523042B&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<p>These days .NET Framework distributable is quite large so this was also bit expected to happen at some point. I recall reading from <a href="http://weblogs.asp.net/scottgu" target="_blank">Scott Guthrie's blog</a> about this earlier. It should also be mentioned that VS2008 SP1 will bring ".NET Framework Client Profile" as mentioned in <a href="http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx" target="_blank">ScottGu's post</a>.</p>
<h3>Web Development, SharePoint, IIS</h3>
<p>Apparently some sort of media server product for Silverlight is in the works:</p>
<blockquote><p>Do you want to help drive the technical strategy around Web and Media technologies that will shape the internet? Do you love deep, pragmatic, and focused engineering challenges where you control the schedule? Have you ever wanted to drive a small, start-up engineering team <strong>building a code base from scratch</strong>?</p>
<p>The .NET Developer Platform team is looking for a Group Manager to build <strong>Microsoft’s new media server product. This team will deliver the server-side media infrastructure and services required to stream rich media on the Web and work hand-in-hand with Silverlight running on the client.</strong> We are looking for a Group Manager who can lead a small team of 10-15 engineers to build this code base from scratch, as an integrated part of <strong>the new Web and Media platform</strong>.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=1B1C8290-234A-46B4-AEB2-EE5506CFA814&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<p>Now this is getting more interesting. It remains to be seen, if this will be a free add-on for IIS or a commercial product.</p>
<p>Moving on to the SharePoint:</p>
<blockquote><p>Would you like to be part of the newly formed team whose charter is to develop <strong>a v1 infrastructure and tools for SharePoint platform?</strong> Would you like to invent, design, and influence a wide range of RAD developer tools for the fastest growing server product in Microsoft’s history? Would you like to work on a team that is in the early stages of execution, <strong>designing a new revolutionary set of tools?</strong> If so, the Developer Division Business Applications team is the place for you.</p>
<p>Our mission is to empower professional, departmental, and end user developers to create a complete range of business solutions and customizations on the SharePoint. We are part of the Visual Studio family. <strong>One of our vNext deliverables includes a rich tool set to support Microsoft Windows SharePoint Services (WSS) and Microsoft Office SharePoint Server (MOSS) that enable developers to fully utilize Visual Studio and the .NET Framework as a development platform.</strong></p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=A2A38033-5702-484D-B4D1-3B27CB334698&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<p><span style="color:#000000;">The last paragraph is the interesting part. Anyone who has developed custom solutions on MOSS 2007 knows that it can be a nightmare. While it has a good collection of components and services, the development and deployment experience could be a lot better. I personally prefer plain ASP.NET projects as the development life-cycle is much more enjoyable and more risk-free. Hopefully these tools will make the SharePoint vNext development much more enjoyable.</span></p>
<p>This is also very interesting as it seems to unify ASP.NET, AJAX and Silverlight development:</p>
<blockquote><p>Are you interested in delivering a cutting-edge technology that will revolutionize Microsoft’s developer platform? Are you looking for the opportunity to help drive several of the key value propositions of the next release of Visual Studio and the .NET Framework? The UI Framework and Services team - part of the .NET Developer Platform group, and owners of ASP.NET, ASP.NET AJAX, and Windows Forms - is kicking off <strong>a new project that will be at the heart of the developer experience for building Rich Internet Applications on Microsoft’s .NET Client platform. The goal of the project is to deliver a dramatically productive and simple experience that enables RIA developers - a key developer market - to easily build rich and powerful data-driven applications on .NET.</strong> The project will build on the huge customer excitement in Silverlight and WPF, and the success of ASP.NET, to deliver an unparalleled client developer story. The key value propositions we will deliver on are:</p>
<ol>
<li>A complete RIA platform</li>
<li>An application model that vastly simplifies LOB application development</li>
<li>Greatly simplify N-Tier app development</li>
<li>Seamlessly take your RIA out of the browser</li>
</ol>
<p>To assist us in this project, we are looking for a strong and experienced SDE to help drive our Application Model and Services team. <strong>This team’s challenge will be to deliver an application model that makes it dramatically simple for developers to build a rich, occasionally connected, n-tier application.</strong> Team deliverables will include <strong>a new deployment model that can seamlessly take .NET-based Rich Internet Applications from the browser to the Windows desktop</strong>, a framework library that makes it incredibly easy to deliver <strong>rich occasionally connected user experiences</strong>, and a set of application building blocks like authentication and personalization that reduce the time to build rich application functionality, and <strong>integrate Rich Internet Applications with Windows, IE, and Office</strong>.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=602E76E3-EFEE-4A0A-908E-A1ECBB0BDAC7&#38;AllCl=Y&#38;start=1&#38;interval=44&#38;SortCol=DatePosted&#38;SortOrder=DEF" target="_blank">Source</a></p></blockquote>
<p>And another related post excerpt:</p>
<blockquote><p>To assist us with these efforts, we are looking for a strong and experienced SDE to help drive our UI and UI Framework team. Building UI from data is at the heart of virtually every LOB application, and the <strong>team will deliver a set of rich Silverlight based controls, including a data grid, that enable new data experiences. The team will also deliver a programming model experience that makes it incredibly easy to build rich data-driven UI and visualizations. Building on innovative technologies such as Silverlight, LINQ and WPF, this team’s work will allow developers to very easily build a fully functional UI application out of data.</strong> Using the UI Framework, developers will be able to then easily customize and enrich the application by adding functionality such as navigation, editing, and validation.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=1BDFA1EE-39AC-491E-B443-9B107B196FF5&#38;AllCl=Y&#38;start=1&#38;interval=44&#38;SortCol=DatePosted&#38;SortOrder=DEF" target="_blank">Source</a></p></blockquote>
<p>This isn't a <a href="http://en.oreilly.com/rails2008/public/schedule/detail/2056" target="_blank">big secret</a>, but it was news to me:</p>
<blockquote><p><strong>Our goal this year is to get Ruby on Rails working in IronRuby. You will be expected to work on the compiler, Ruby libraries, and performance improvements. We also want to provide IronRuby support in the Visual Studio IDE.</strong> This includes editing features (color-coding of source code, intellisense, etc), debugging features (breakpoints, data tool tips), ensuring a Ruby look-and-feel (interactive console, etc), and integration into the Visual Studio project system.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=7C2E33E8-5A9C-44F3-A1CE-DA2D66DC3C8B&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<h3>Visual Studio</h3>
<p><span style="color:#000000;">Major changes are coming to Visual Studio (some day):</span></p>
<blockquote><p>Over the next few years we plan to modernize and/or re-architect various areas of the [Visual Studio] platform where we see the greatest potential opportunities for improving the developer experience exist. <strong>These include creating a new User Interface that takes advantage of the latest in UI tools, techniques, and hardware</strong>; a robust extensibility model that helps 3rd parties extend and enhance the VS environment to improve developer productivity; <strong>an editor that is both modern and extensible and greatly improves developer code understanding</strong>; <strong>a build system that can scale to projects as large as building the Windows Operating System;</strong> and an automation model that makes it easy to automate the development environment and allow for tasks like nightly builds to be automated.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=ED3CA573-95C1-4E03-AF07-DF965E16EEC7&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<p>Another posting reveals that WPF is one of the "latest UI techniques":</p>
<blockquote><p>Major initiatives for this team for the next release of VS include:</p>
<p>* <strong>Work with the Shell UI team to migrate portions of the VS Shell to WPF</strong></p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=7B299AC2-7292-474F-9B93-BF1DF82ED70A&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<h3>Visual Studio Team System</h3>
<p>I have just adopted Team Foundation Server 2008 and other Team System features so I'm very excited to see what's happening on this area. Here are some finds:</p>
<blockquote><p>If you use Visual Studio or any other popular IDE to write code in C#, C++, VB, Java, etc. then these services are a familiar part of your development lifestyle. <strong>If you develop for any of the major SQL platforms, then the available development tools leave you relatively out in the cold.</strong> In certain respects, database development tools are fully three decades behind the curve!</p>
<p>Come work for the team that is changing this with a market-shifting database development project system within Visual Studio. <strong>The mission for the team is no less than to bring tooling-support for database developers to par with that of traditional languages such as C# and C++, for the complete application lifecycle.</strong> This is a challenging charter, in a fundamentally unique problem-space. In one team you will find a broad spectrum of software development challenges from designer and user interface work, to the nuts and bolts of language parsing and cutting-edge code-modeling.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=41AE8984-813E-431B-A59F-EEBFDCC05018&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<p><span style="color:#000000;">Interesting and I have no idea what it could be in practice. ;)</span></p>
<p><span style="color:#000000;">Testing will also get more tools in the VSTS:</span></p>
<blockquote><p>In the Rosario release of VSTST we have the ambitious goal of fundamentally changing the relationship between Development and QA by providing tools and workflow that make testers first class citizens in our customers’ development process. To do this, <strong>we will deliver world class Test Case Management, Test Authoring, Automation Tools and Frameworks, as well as game changing integrations within Visual Studio Team Suite</strong>.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=4FB965E1-E231-4751-9B9C-8DAA9B1F7A30&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<h3>Distributed Applications</h3>
<p>These days I do integration projects and distributed programming is part of my daily life. That's why I'm increasingly looking into WCF, WF and BizTalk as they could be part of our integration product. After reading these posts it seems that something interesting (that is, Oslo) is on the way:</p>
<blockquote><p>Join the Connected Framework (CFx) team and help us create the programming model central to Microsoft's next generation of the distributed application framework. The team has recently delivered first versions of WCF (aka Indigo) and Windows Workflow, which are receiving significant customer acceptance. WCF is THE Web Services stack for Microsoft, and Windows Workflow is THE foremost declarative, process model framework. <strong>Now is a great time to join the team as we are starting to work on the next major release that consolidates and enhances these two powerful yet simple and elegant development frameworks into a single unified platform aiming for 10x productivity increase in distributed applications development</strong>.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=3F4A3595-3008-4AD2-A09D-39D09EF34583&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p>
<p>For the last few years, we have been on a mission to make the usage of transactions simple, fast and ubiquitous. We have made tremendous progress so far. The Systems Transactions namespace in .NET 2.0 made transactions far easier to use, with dramatic improvements in performance. We have extended the reach of transactions all the way from web services to the kernel. We authored and implemented the WS-Atomic Transactions standard. In Vista, we integrated our transactions stack with the transacted file system and registry! <strong>In Oslo, we are planning to add distributed compensation support by adding long-running transactions support to the connected framework runtime! But all of this is just the beginning. In our upcoming releases we will continue to extend our reach, from atomic transactions to long-running activities with compensation to generic agreement protocols!</strong> We will continue to make it easier to write reliable and consistent distributed applications. Most importantly, we will continue to ship regularly to get our work into the hands of customers.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=50D84604-F867-4507-8E29-5E8B694FA6BF&#38;start=1&#38;interval=25&#38;SortCol=DatePosted" target="_blank">Source</a></p></blockquote>
<h3>SQL Server and Data Programmability</h3>
<blockquote><p>Do you have a passion for building state-of-the-art graphics software? Would you like to influence the direction of a key technology used across multiple Microsoft products?</p>
<p>We are seeking a Lead Software Development Engineer to drive the architecture, design, and implementation of <strong>rich data visualization components - including charts, gauges, maps, and calendars - that will be included in upcoming releases of SQL Server, Visual Studio, and Office.</strong> In this highly visible leadership role, you will be responsible for managing a high performance team of software developers using the latest Microsoft technologies, including C#, ASP.NET, AJAX, Silverlight, and WPF.</p>
<p>Rich data visualization capabilities are quickly becoming a requirement for modern business applications. <strong>The SQL Server Reporting Services team is on the cutting edge of this technology, creating a set of powerful and interactive data visualization components for application developers, IT professionals, and end users.</strong> We are a growing team that is passionate about creating the most comprehensive database reporting, data visualization, and notifications platform in the industry. We have an expanding customer base that has ever-increasing demands for more capabilities, and we are continuing to extend our product reach, evolve the feature set, and deliver new customer innovations.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=77C79B1C-1A72-40B2-8549-187C4B5CD942&#38;start=21&#38;interval=10&#38;SortCol=DatePosted&#38;SortOrder=" target="_blank">Source</a></p></blockquote>
<p>Those data visualization controls will be welcomed. :)</p>
<p>XML tools for SQL Server/Visual Studio will be enhanced. Interesting point is that WPF and Silverlight will be part of it:</p>
<blockquote><p><strong>Help build the XML Editor, XSLT Debugger and XML Editing platform for developers.</strong> The Data Programmability (DP) Tools product team is a new and growing product unit that is looking for a talented and motivated developer. <strong>We want you to help define and build state of the art tools that are distributed as part of Visual Studio and SQL Server</strong> and are used by millions of developers world-wide - hobbyists and enterprise developers alike. We value and encourage innovation and excellence in graphical tool design, usability, infrastructure, and execution. <strong>SQL Server is investing in tools. If you want to make a difference and work with state of the art technologies such as WPF, Silverlight, MEF/MAF, and help define tools standards for developers, then we would like to talk with you</strong>.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=6500921D-FD96-4E81-9126-953A82C0CED8&#38;start=101&#38;interval=50&#38;SortCol=DatePosted&#38;SortOrder=" target="_blank">Source</a></p></blockquote>
<p>This posting gives many interesting details about SQL Server's future:</p>
<blockquote><p><strong>SQL Server is embarking on an ambitious effort to rejuvenate the T-SQL language and to embrace all the programming models in the data platform - relational, spatial, full text, xml and entities.</strong> This involves all aspects of the SQL programming surface from designing procedural extensions to the language, to improving the cursor model, to enhanced metadata discovery, to application packaging, to building a new compiler for T-SQL, to building extensibility into SQL Server. And this is just a sampling of the problems for which you will need to design and help build good solutions. In addition, this effort will require you to work on and influence Microsoft’s Data Platform Strategy.</p>
<p><a href="http://members.microsoft.com/careers/search/details.aspx?JobID=D291F60B-E7CB-4C2C-B4EA-6953C49318F5&#38;start=101&#38;interval=50&#38;SortCol=DatePosted&#38;SortOrder=" target="_blank">Source</a></p></blockquote>
<h3>Last notes</h3>
<p>As you can see, many interesting tools and technologies are on their way in the next few years. My research method was very random and the job postings don't reveal much, but I'm sure that we'll get more information in the coming months.</p>
<p>However, the pattern already shows that many coming features build on existing components and aim to unify the development experience by combining them in many ways.</p>
<p>It seems that there will be much more graphical designers, DSLs and other modern ways of generating applications. This will split the opinions as many developers prefer to code in the traditional way, but I'm sure there will be something for everybody - I probably found just a few interesting bits out of many!</p>
<p>From my view point the most interesting finds were:</p>
<ul>
<li>UI developers will get the Application Framework(?) that combines the WPF, Silverlight and ASP.NET technologies.</li>
<li>SharePoint development experience will be tolerable, perhaps even fun.</li>
<li>Distributed developers will get the Connected Framework(?) that builds on WF and WCF.</li>
<li>Productive LOB-application tools that utilize latest UI-technologies (Silverlight, WPF) with little or no code.</li>
<li>SQL Server will get major changes to T-SQL and new XML tools.</li>
<li>Visual Studio will be enhanced in many, innovative ways with technologies like WPF.</li>
<li>Visual Studio Team System will make database development more integrated with the development process. Testing will get more tools.</li>
</ul>
<p>Do you have any rumors to share?</p>
<p><a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fblog.jemm.net%2f2008%2f05%2f24%2fthe-future-of-net-visual-studio-and-more%2f"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblog.jemm.net%2f2008%2f05%2f24%2fthe-future-of-net-visual-studio-and-more%2f&#38;bgcolor=0066FF" border="0" alt="kick it on DotNetKicks.com" /></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[links for 2008-04-15]]></title>
<link>http://netweb.wordpress.com/2008/04/15/links-for-2008-04-15/</link>
<pubDate>Tue, 15 Apr 2008 07:31:51 +0000</pubDate>
<dc:creator>Stephen</dc:creator>
<guid>http://netweb.wordpress.com/2008/04/15/links-for-2008-04-15/</guid>
<description><![CDATA[

PhotoZoom
(tags: photography photozoom silverlight ria)


Welcome to C1 Labs!
(tags: silverlight w]]></description>
<content:encoded><![CDATA[<ul class="delicious">
<li>
<div class="delicious-link"><a href="http://photozoom.mslivelabs.com/Default.aspx">PhotoZoom</a></div>
<div class="delicious-tags">(tags: <a href="http://del.icio.us/Netweb/photography">photography</a> <a href="http://del.icio.us/Netweb/photozoom">photozoom</a> <a href="http://del.icio.us/Netweb/silverlight">silverlight</a> <a href="http://del.icio.us/Netweb/ria">ria</a>)</div>
</li>
<li>
<div class="delicious-link"><a href="http://labs.componentone.com/">Welcome to C1 Labs!</a></div>
<div class="delicious-tags">(tags: <a href="http://del.icio.us/Netweb/silverlight">silverlight</a> <a href="http://del.icio.us/Netweb/wpf">wpf</a> <a href="http://del.icio.us/Netweb/visualstudio">visualstudio</a> <a href="http://del.icio.us/Netweb/development">development</a> <a href="http://del.icio.us/Netweb/developer">developer</a>)</div>
</li>
</ul>
]]></content:encoded>
</item>
<item>
<title><![CDATA[[ VisualStudio2008 ] 5 cose che odio]]></title>
<link>http://alessandrofabozzi.wordpress.com/?p=81</link>
<pubDate>Sat, 12 Apr 2008 00:14:47 +0000</pubDate>
<dc:creator>Alessandro</dc:creator>
<guid>http://alessandrofabozzi.wordpress.com/?p=81</guid>
<description><![CDATA[
La pagina iniziale mi è causa di profondo stress, se imposto la pagina iniziale, la maggior parte ]]></description>
<content:encoded><![CDATA[<ol>
<li>La pagina iniziale mi è causa di profondo stress, se imposto la pagina iniziale, la maggior parte delle volte è la prima tab che chiudo, se invece imposto l'ultima soluzione aperta è la volta che debbo cominciare un nuovo progetto, se imposto ambiente vuoto voglio caricare l'ultima soluzione sulla quale ho lavorato, ecc...</li>
<li> Quando formatta documento inspiegabilmente non è selezionabile e mi sono ubriacato la sera prima e non mi ricordo i tasti di scelta rapida (Ctrl+K, Ctrl+D)</li>
<li> Quando al selettore tag gli dici e gli ripeti "seleziona il tag" e non ne vuole sapere e seleziona sempre il contenuto</li>
<li> Quando le tab laterali rimangono fisse anche se le hai impostate a scomparsa</li>
<li>Il debugger che per un web service nella soluzione ti obbliga a connetterti al processo.</li>
</ol>
<p><a title="Segnalalo a wikio" href="http://www.wikio.it/vote?url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img alt="" /></a> <a title="Segnalalo a OKnotizie" href="http://oknotizie.alice.it/post.html.php?url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img alt="" /></a> <a title="Segnalalo a Technotizie" href="http://www.technotizie.it/posta_ok?action=f2&#38;url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img alt="" /></a> <a title="Segnalalo a FaiInformazione" href="http://fai.informazione.it/submit.aspx?url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img alt="" /></a> <a title="Stumble Upon This Post" href="http://www.stumbleupon.com/submit?url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio" target="_blank"><img src="http://farm2.static.flickr.com/1370/733440891_50ed247070_m.jpg" alt="" /></a> <a title="Submit Post to Digg" href="http://www.digg.com/submit?phase=2&#38;url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img src="http://farm2.static.flickr.com/1221/733437537_ebf30b1720_m.jpg" alt="" /></a> <a title="Save to Del.icio.us" href="http://del.icio.us/post?url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img src="http://farm2.static.flickr.com/1246/733437281_0e295fe3bf_m.jpg" alt="" /></a> <a title="Save to Technorati" href="http://technorati.com/faves?add=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio" target="_blank"><img src="http://farm2.static.flickr.com/1128/733441131_4254d74789_m.jpg" alt="" /></a> <a title="Save to diggita" href="http://www.diggita.it/submit.php?url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img src="http://img77.imageshack.us/img77/9300/diggitatq5.gif" alt="" /></a> <a title="Save to Segnalo" href="http://segnalo.alice.it/post.html.php?url=http://alessandrofabozzi.wordpress.com/2008/04/12/visualstudio2008-6-cose-che-odio&#38;title=[ VisualStudio2008 ] 6 cose che odio" target="_blank"><img src="http://img239.imageshack.us/img239/5802/segnalott4.gif" alt="" /></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Class vs Modules]]></title>
<link>http://danasegarane.wordpress.com/?p=20</link>
<pubDate>Wed, 09 Apr 2008 13:32:32 +0000</pubDate>
<dc:creator>danasegarane</dc:creator>
<guid>http://danasegarane.wordpress.com/?p=20</guid>
<description><![CDATA[Class vs Modules 
]]></description>
<content:encoded><![CDATA[<p><a href="http://msdn2.microsoft.com/en-us/library/7825002w(VS.80).aspx">Class vs Modules </a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Windows.Net Learning Videos]]></title>
<link>http://danasegarane.wordpress.com/?p=18</link>
<pubDate>Sat, 05 Apr 2008 11:31:28 +0000</pubDate>
<dc:creator>danasegarane</dc:creator>
<guid>http://danasegarane.wordpress.com/?p=18</guid>
<description><![CDATA[Learn Windows.Net using this
Happy Learning
]]></description>
<content:encoded><![CDATA[<p>Learn Windows.Net using <a href="http://windowsclient.net/learn/videos.aspx">this</a></p>
<p>Happy Learning</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[No Visual Studio template information found.]]></title>
<link>http://glittermonkey.wordpress.com/?p=9</link>
<pubDate>Thu, 03 Apr 2008 16:29:36 +0000</pubDate>
<dc:creator>glittermonkey</dc:creator>
<guid>http://glittermonkey.wordpress.com/?p=9</guid>
<description><![CDATA[I started getting this error in my Visual Studio IDE today: &#8220;No Visual Studio template informa]]></description>
<content:encoded><![CDATA[<p>I started getting this error in my Visual Studio IDE today: "No Visual Studio template information found."</p>
<p> <a href="http://glittermonkey.wordpress.com/files/2008/04/errormessage.jpg" title="errormessage.jpg"><img src="http://glittermonkey.wordpress.com/files/2008/04/errormessage.thumbnail.jpg" alt="errormessage.jpg" /></a></p>
<p>If we take a look in the event log we see additional detail on how to address the problem:</p>
<p><a href="http://glittermonkey.wordpress.com/files/2008/04/eventlog.jpg" title="eventlog.jpg"><img src="http://glittermonkey.wordpress.com/files/2008/04/eventlog.jpg" alt="eventlog.jpg" /></a></p>
<p>Open a command prompt to the location of devenv.exe and run the command: "devenv.exe /installvstemplates"</p>
<p><a href="http://glittermonkey.wordpress.com/files/2008/04/cmdprompt.jpg" title="cmdprompt.jpg"><img src="http://glittermonkey.wordpress.com/files/2008/04/cmdprompt.thumbnail.jpg" alt="cmdprompt.jpg" /></a></p>
<p>We are back in business!</p>
<p>The only outstanding question: why did this happen in the first place?</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Visual Studio 2008 Standard vs Professional and the lack of Windows Services Support]]></title>
<link>http://justinjmoses.wordpress.com/?p=39</link>
<pubDate>Thu, 27 Mar 2008 01:01:04 +0000</pubDate>
<dc:creator>Justin J. Moses</dc:creator>
<guid>http://justinjmoses.wordpress.com/?p=39</guid>
<description><![CDATA[Ok, well I&#8217;ve blogged about the virtues of VS2008 Standard before.
Essentially, I find the Sta]]></description>
<content:encoded><![CDATA[<p>Ok, well I've blogged about the virtues of VS2008 Standard before.</p>
<p>Essentially, I find the Standard version very satisfactory for everyday coding. Even the Server Explorer is there, regardless of what <a href="http://msdn2.microsoft.com/en-gb/vs2008/products/bb980920.aspx" target="_blank">Microsoft's product comparison</a> says.</p>
<p>One thing that frustrates me however, was that nowhere on the site, did they mention that the creation of Windows Services was a Professional-only inclusion. Huh.</p>
<p><a href="http://msdn2.microsoft.com/en-us/library/d56de412(VS.80).aspx" target="_blank">This is the MSDN article</a> explaining the lack of the feature. But checkout the link they have on VS version comparisons and show me where it mentions no Windows Services.  Boo.</p>
<p>If you think about it, Services are useful little tools, especially when you have your own server to work with, and you need something running all the time, managing data requests - like a process queuing service for example.</p>
<p>The feature that is missing from Visual Studio is the startup Project Template.  However, if you know the startup code, you don't need the Template.</p>
<p>You can still create an Empty Project in VS2008 Standard, include the System reference and the System.ServiceProcess reference and then add the classes from there.  <a href="http://www.codeproject.com/KB/system/WindowsService.aspx" target="_blank">This CodePoint article provides a good insight.</a> <a href="http://msdn2.microsoft.com/en-us/library/aa984335(VS.71).aspx" target="_blank">Microsoft have their own article</a> - though it's in VB.NET (ewww).</p>
<p>Personally, I find the best approach is to create a Service.cs file and load the code from the Code Project site. Then you can simply follow Microsoft's instructions to add an installer.</p>
<p>You then install via your framework's InstallUtil.exe (again see the Microsoft link). This executable is distributed with the .NET 2.0 Framework, and as such you can find it somewhere like: C:\WINDOWS\Microsoft.NET\Framework\v2.0.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Silverlight Blueprint for Sharepoint]]></title>
<link>http://jdieguez.wordpress.com/2008/03/09/silverlight-blueprint-for-sharepoint/</link>
<pubDate>Sun, 09 Mar 2008 17:19:59 +0000</pubDate>
<dc:creator>jdieguez</dc:creator>
<guid>http://jdieguez.wordpress.com/2008/03/09/silverlight-blueprint-for-sharepoint/</guid>
<description><![CDATA[De la mano de Microsoft, un interesante conjunto de ejemplos del uso de la tecnología Silverlight p]]></description>
<content:encoded><![CDATA[<p>De la mano de <strong>Microsoft</strong>, un interesante conjunto de ejemplos del uso de la tecnología <strong>Silverlight</strong> para <strong>SharePoint</strong>. <br><a title="http://www.ssblueprints.net/sharepoint/" href="http://www.ssblueprints.net/sharepoint/"><strong>http://www.ssblueprints.net/sharepoint/</strong></a> <br><a href="http://jdieguez.files.wordpress.com/2008/03/09082008.jpg"><img style="border-width:0;" height="221" alt="09082008" src="http://jdieguez.files.wordpress.com/2008/03/09082008-thumb.jpg" width="441" border="0"></a> </p>
<p>Cada ejemplo consiste en la solución <strong>VisualStuio</strong>, la <strong>documentación</strong> que explica el código y su despliegue y unos vídeos explicativos. </p>
<p>De momento hay 6 ejemplos, entre estos: un WebPart de Hola Mundo en Silverlighnt, un WebPart de Red Social en el que se combina la tecnología <strong>Silverlight</strong> con <strong>WCF</strong>, un <strong><a href="http://jdieguez.wordpress.com/2008/02/10/custom-field-types-en-sharepoint/" target="_blank">Cutsom Field</a></strong> de SharePoint.</p>
<p>Muy interesante e instructivo.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Console.ReadLine();]]></title>
<link>http://neofight.wordpress.com/?p=10</link>
<pubDate>Sat, 01 Mar 2008 19:49:25 +0000</pubDate>
<dc:creator>Shaun McCarthy</dc:creator>
<guid>http://neofight.wordpress.com/?p=10</guid>
<description><![CDATA[Do you quite often find yourself putting Console.ReadLine() at the end of each of your console progr]]></description>
<content:encoded><![CDATA[<p>Do you quite often find yourself putting Console.ReadLine() at the end of each of your console programs so you can see the output before Visual Studio closes the window? And then you find yourself in the embarrasing situation of leaving the code in when it's deployed so that whenever you run the application from the command line, it ends up sitting there waiting for you to press a key? Well, next time, wrap it in the following:</p>
<p><code><br />
<font color="#0000ff">if</font> (System.Diagnostics.<font color="#2b91af">Debugger</font>.IsAttached)<br />
{<br />
<font color="#2b91af">Console</font>.WriteLine(<font color="#a31515">"Press a key to quit...");<br />
<font color="#2b91af">Console</font>.ReadKey(<font color="#0000ff">true</font>);<br />
}<br />
</code></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Visual Studio Team System]]></title>
<link>http://neofight.wordpress.com/2008/02/29/visual-studio-team-system/</link>
<pubDate>Fri, 29 Feb 2008 21:19:35 +0000</pubDate>
<dc:creator>Shaun McCarthy</dc:creator>
<guid>http://neofight.wordpress.com/2008/02/29/visual-studio-team-system/</guid>
<description><![CDATA[So I have been playing around with Visual Studio Team System in my spare time, evaluating if it]]></description>
<content:encoded><![CDATA[<p>So I have been playing around with Visual Studio Team System in my spare time, evaluating if it's actually any better than using a whole mess of alternatives (Our current setup is NUnit, MSBuild, NCover, CruiseControl &#38; FogBugz). Overall, having everything integrated with everything else is fantastic! It makes assign check ins to bugs really easy, and it's then easy to associate specific unit tests to work items, so that you can get some background as to why that unit test is there. Awesome.</p>
<p>However, each "component" lacks one thing. For example, the interface to the work items is no where near as polished as FogBugz. You can't share items in the source control. And today, I found out that you can't have categories in NUnit tests. This is a make or break item for me. So what am I going to do about it? Fix it, that's what. This weekend I plan on writing something that will autogenerate test lists and then run them with the console mstest application.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Add-In für VisualStudio 2008, Support für SQL Server 2008]]></title>
<link>http://dotlab.wordpress.com/?p=15</link>
<pubDate>Thu, 28 Feb 2008 13:39:17 +0000</pubDate>
<dc:creator>dotlab</dc:creator>
<guid>http://dotlab.wordpress.com/?p=15</guid>
<description><![CDATA[Microsoft hat ein Add-In zur Verfügung gestellt für alle glücklichen Entwickler, die bereits mit ]]></description>
<content:encoded><![CDATA[<p>Microsoft hat ein Add-In zur Verfügung gestellt für alle glücklichen Entwickler, die bereits mit dem VisualStudio 2008 unterwegs sind. Letzteres verursachte bislang Probleme im Zusammenspiel mit einem SQL Server 2008. Das Add-In ist gerade mal knapp 4mb gross und kann <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=A999C84F-0FE5-4926-A1BF-4730D1CAA98C&#38;displaylang=en" target="_blank">HIER</a> runtergeladen werden. </p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Visual Studio ShortCuts]]></title>
<link>http://danasegarane.wordpress.com/?p=9</link>
<pubDate>Tue, 19 Feb 2008 10:10:00 +0000</pubDate>
<dc:creator>danasegarane</dc:creator>
<guid>http://danasegarane.wordpress.com/?p=9</guid>
<description><![CDATA[In many of the case i found that the users are asking for the shortcuts avaliable in Visual Studio.
]]></description>
<content:encoded><![CDATA[<p>In many of the case i found that the users are asking for the shortcuts avaliable in Visual Studio.<br />
This link provides the visual screen shorts of the avalible shortcuts</p>
<p><a href="http://www.codinghorror.com/blog/files/Visual%20Studio%20.NET%202005%20Keyboard%20Shortcuts.htm">Visual Studio ShortCuts</a></p>
<p>Happy Coding <img width="615" src="http://www.myspacegeek.net/graphics/backgrounds/2/SMILE.jpg" alt="Happy Coding" height="656" style="width:76px;height:50px;" /></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Strong Naming]]></title>
<link>http://leonelfueguel.wordpress.com/?p=43</link>
<pubDate>Sun, 17 Feb 2008 02:41:27 +0000</pubDate>
<dc:creator>leonelfueguel</dc:creator>
<guid>http://leonelfueguel.wordpress.com/?p=43</guid>
<description><![CDATA[I hope you all had a great Christmas, or whatever else you may or may not choose to celebrate at thi]]></description>
<content:encoded><![CDATA[<p><span>I hope you all had a great Christmas, or whatever else you may or may not choose to celebrate at this time of year. (I've probably been in the USA too long, with this amount of political correctness showing through ;-). This was my first Christmas in the northern hemisphere - we went skiing in Whistler so we had the full-on "white Christmas" experience. It was great fun, but very different to what I'm used to. But I'm back in Seattle now, still taking a few more days off work but you should start to see more of me on the blogs and on the <a href="http://www.codeplex.com/entlib">new EntLib CodePlex site</a> [shameless plug].</span></p>
<p>One new Enterprise Library 3.0 topic I was planning on blogging about was the new Visual Studio-integrated configuration tool, and the other few bags and whistles we've added to the tool. However <a href="http://codebetter.com/blogs/david.hayden/">David Hayden</a> has already done a better job than I was planning on doing, so you may as well just <a href="http://codebetter.com/blogs/david.hayden/archive/2006/12/22/Enterprise-Library-3.0-December-2006-CTP-Released-_2D00_-Cool-Configuration-Editor_2100_.aspx">read his summary and tutorial</a>!</p>
<p>So over to plan B, which is to tell you more about the Strong Naming Guidance Package. First, a bit of history about why we built this:</p>
<p><a href="http://msdn.microsoft.com/library/en-us/dnpag2/html/entlib.asp">Long, long ago in the dreamtime</a>, Enterprise Library's unit tests were contained in the same assemblies as the blocks themselves (although they were in #if blocks so you could compile them out). Because the tests were in the same assemblies as the code, it was possible to test internal classes and members as well as public ones. However, because of feedback from people who didn't want the tests to "pollute" the production code, as well as the fact that the new VSTS unit testing capabilities didn't support mixing production and test code in the same assembly, we moved the tests into separate assemblies for our .NET 2.0 release. This kept everything nice and clean, but it did prevent us from testing internal methods - until we discovered the awesome power of [InternalsVisibleTo]. This attribute can be applied to assemblies to designate which other assemblies are its "friends" and hence can access internal classes and members. So we applied this attribute on the core block assemblies to tell it that the unit test assemblies were its "friends".</p>
<p>So far, so good - until you try to strong-name the EntLib source code. While it is possible to combine strong-naming and [InternalsVisibleTo], it is necessary to do everything in precisely the right order (including the all-important goat sacrifice at step 22) in order to make everything work. Actually the [InternalsVisibleTo] attribute needs to be updated to include the full public key (not the 16 character token, but all 320 characters of the public key) before anything will compile - and until you get something to compile, it's pretty hard to figure out what the key is.</p>
<p>In our defense, we did realize that it was pretty bloody hard to strong-name Enterprise Library, and we provided a pretty detailed topic in the documentation explaining how to do this (look for "strong naming" in the index). But still, it's a lot of manual work, and since we recommend that most people strong-name Enterprise Library, we (quite rightly) have received a lot of negative feedback about this being too difficult.</p>
<p>Luckily v3 is giving us a chance at some redemption. A few months ago, I spent a bit of time creating a Visual Studio macro that automated the strong-naming process, although it was quite unpolished and there isn't a nice way of packaging and distributing VS macros, so it was never released. But when EntLib v3 kicked off, I converted it into a GAX guidance package, and <a href="http://clariusconsulting.net/blogs/fds/">Fernando</a> cleaned it up to something worthy of public consumption - and the result has made it into the December CTP. Here's how it works:</p>
<ol>
<li>Ensure you have GAX and the Strong Naming Guidance Package (in the EntLib 3.0 December 2006 CTP) installed</li>
<li>Open up the EntrpriseLibrary.VSTS or EnterpriseLibrary.NUnit solutions in Visual Studio</li>
<li>In Visual Studio, choose Tools &#62; Guidance Package Manager</li>
<li>Click "Enable / Disable Guidance Packages"</li>
<li>Select the "Strong Naming Guidance Package", and close all of the dialogs</li>
<li>If you don't already have a .snk file you want to use, right-click on a project or solution folder and choose "Create a new strong-name key pair file". This will trigger a simple recipe that does exactly what its name suggests. If you already have a .snk file you want to use, you can skip this step</li>
<li>To strong-name the projects, right-click on the solution root, or a solution folder (if you don't want to strong-name everything), and choose "Strong-name all projects in this solution or solution folder".</li>
<li>This will launch a wizard that prompts for the key file to use. You can use the key file you created in step 6 or any other one. Also select the "Update InternalsVisibleTo" checkbox to tell the recipe to search for this attribute and add the public key</li>
<li>Click OK, and watch the magic of guidance automation!</li>
</ol>
<p>While we built this guidance package primarily for Enterprise Library, there isn't anything that will stop you using it on any other similar complex solutions. Also while it's included in v3, it should<a href="http://blogs.msdn.com/tomholl/pages/standard-disclaimer.aspx">***</a> work fine on v2 as well, so this may save you a few hours of your life if you need to strong-name Enterprise Library for any current projects.</p>
<p>One final note - in the EntLib 3.0 December 2006 CTP, we are shipping pre-compiled, strongly-named assemblies for the first time - and we plan to do this for the final release as well. I'll discuss the reasons and implications of this more in a future post, but for now I'll simply say that even though we're shipping these binaries, you'll still probably want to use the source code and strong-name it yourself to provide the most flexibility in how you use and evolve Enterprise Library.</p>
<p>If you have any questions, suggestions or issues with this guidance package, please let us know. And a Happy New Year to everyone!</p>
<p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=1378415" height="1" width="1" /></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Custom Field Types en SharePoint]]></title>
<link>http://jdieguez.wordpress.com/2008/02/10/custom-field-types-en-sharepoint/</link>
<pubDate>Sun, 10 Feb 2008 16:11:47 +0000</pubDate>
<dc:creator>jdieguez</dc:creator>
<guid>http://jdieguez.wordpress.com/2008/02/10/custom-field-types-en-sharepoint/</guid>
<description><![CDATA[Uno de los objetivos principales de SharePoint como producto es gestionar la información y facilita]]></description>
<content:encoded><![CDATA[<p>Uno de los objetivos principales de SharePoint como producto es <strong>gestionar la información</strong> y <strong>facilitar el trabajo colaborativo</strong> de los usuarios con la información almacenada.
<p>La información dentro de los sitios SharePoint se almacena en <strong>listas</strong>. Una lista es una colección de datos estructurado en <strong>columnas</strong>, de forma similar a una base de datos. Por ejemplo una lista de contactos tendrá las columnas necesarias para gestionar los contactos (nombre, apellidos, teléfono, dirección, ect). <br>El usuario puede crear nuevas listas y configurar las columnas(campos) que sean necesarios para tratar la información.<br>Las columnas de las listas pueden ser de distinto tipo: Texto, Texto HTML, Fecha, etc. <br><a href="http://jdieguez.files.wordpress.com/2008/02/10022008-01.jpg"><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" height="377" alt="10022008_01" src="http://jdieguez.files.wordpress.com/2008/02/10022008-01-thumb.jpg" width="644" border="0"></a> <br>Una vez que la lista esta configurada los usuarios pueden ir añadiendo o modificando la información por medio de los formularios. Por ejemplo las columnas de tipo Fecha se añaden o modifican por medio de una caja del calendario, el campo Texto HTML presenta un panel de formato HTML.<br><a href="http://jdieguez.files.wordpress.com/2008/02/10022008-02.jpg"><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" height="377" alt="10022008_02" src="http://jdieguez.files.wordpress.com/2008/02/10022008-02-thumb.jpg" width="644" border="0"></a> <br>Por medio de los Sitios, Listas y Campos (de distintos tipos) las personas de una organización pueden establecer los procesos y configurar las herramientas que faciliten la gestión de la información.<br><a href="http://office.microsoft.com/en-us/sharepointtechnology/HA011199881033.aspx">http://office.microsoft.com/en-us/sharepointtechnology/HA011199881033.aspx</a>
<p>&#160;
<p>SharePoint brinda la posibilidad de desarrollar <strong>nuevos tipos (formatos) de columna.</strong> Este nuevo tipo de columnas se denominan <strong>Custom Field Type</strong> y permite definir de forma programática como un campo muestra(renderiza) el dato, como se debe validar el dato introducido y como se tiene que almacenar el dato.<br>
<p>Por ejemplo: Hay determinado tipo de información que se estructura en <strong>forma de árbol:</strong> una estructura organizativa de una empresa, o una red de oficinas regionales. <br>Otro ejemplo: En un formulario recoger la valoración de algo en forma de estrellas (como los hoteles de de una a cinco estrellas).
<p>El segundo ejemplo es el concepto que estoy implementando actualmente en mis ratos libres para ver cómo funciona esto de las Custom Fields. <br><a href="http://jdieguez.files.wordpress.com/2008/02/10022008-03.jpg"><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" height="321" alt="10022008_03" src="http://jdieguez.files.wordpress.com/2008/02/10022008-03-thumb.jpg" width="331" border="0"></a> <br><a href="http://jdieguez.files.wordpress.com/2008/02/10022008-04.jpg"><img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" height="249" alt="10022008_04" src="http://jdieguez.files.wordpress.com/2008/02/10022008-04-thumb.jpg" width="525" border="0"></a>&#160;<br>En esta experimento me esta ayudan las extensiones de VisualStudio para WSS y este articulo de MSDN<strong> </strong><a href="http://msdn2.microsoft.com/en-us/library/bb684919.aspx" target="_blank"><strong>Building Custom Field Types in Windows SharePoint Services 3.0</strong></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Using extension methods with a data reader]]></title>
<link>http://blog.jemm.net/2008/02/01/using-extension-methods-with-a-data-reader/</link>
<pubDate>Fri, 01 Feb 2008 07:48:54 +0000</pubDate>
<dc:creator>jemm</dc:creator>
<guid>http://blog.jemm.net/2008/02/01/using-extension-methods-with-a-data-reader/</guid>
<description><![CDATA[Extension methods help making many routine codes much cleaner and simpler. In this post I&#8217;ll s]]></description>
<content:encoded><![CDATA[<p>Extension methods help making many routine codes much cleaner and simpler. In this post I'll show how I use extension methods with classes that implement <span style="color:#0080c0;">IDataReader</span> such as <span style="color:#408080;">SqlDataReader</span>. I'll also throw in some examples how to convert fields to enums etc tips for usual needs.</p>
<p>While LINQ is now the coolest kid in the block, the oldskool data readers are still the most efficient way for most cases and every now and then I still use them.</p>
<p>When you loop through the data reader, you have to convert each column into right type. For example:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;"><span style="color:#2b91af;">SqlDataReader</span> reader;</p>
<p style="margin:0;">reader = sqlCommand.ExecuteReader(<span style="color:#2b91af;">CommandBehavior</span>.SingleRow);</p>
<p style="margin:0;">
<p style="margin:0;">reader.Read();</p>
<p style="margin:0;">product.ProductID = <span style="color:#2b91af;">Convert</span>.ToInt32(reader[<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>]);</p>
</div>
<h3>Converting data with a helper class</h3>
<p>Typically I moved the conversion to some helper tools class to encapsulate and unify the conversion:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:blue;">class</span> <span style="color:#2b91af;">Tools</span></p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:blue;">int</span> GetInt(<span style="color:#2b91af;">IDataReader</span> reader, <span style="color:blue;">string</span> column)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">if</span> (reader[column] != <span style="color:#2b91af;">DBNull</span>.Value)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">return</span> <span style="color:#2b91af;">Convert</span>.ToInt32(reader[column]);</p>
<p style="margin:0;">}</p>
<p style="margin:0;"><span style="color:blue;">else</span></p>
<p style="margin:0;"><span style="color:blue;">return</span> 0;</p>
<p style="margin:0;">}</p>
</div>
<p>With that helper method the code would look something like this:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;">product.ProductID = <span style="color:#2b91af;">Tools</span>.GetInt(reader, <span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>);</p>
<p style="margin:0;">product.ProductName = <span style="color:#2b91af;">Tools</span>.GetString(reader, <span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductName"</span>);</p>
<p style="margin:0;">product.UnitPrice = <span style="color:#2b91af;">Tools</span>.GetDouble(reader, <span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"UnitPrice"</span>);</p>
<p style="margin:0;">product.Discontinued = <span style="color:#2b91af;">Tools</span>.GetBool(reader, <span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"Discontinued"</span>);</p>
</div>
<p>This looks better and if I need to change the rules I can do it in one location. Still, there is a bit nicer way after the extension methods came with .NET 3.5.</p>
<h3>Converting data with extension methods</h3>
<p>I won't go through the basic examples about what the extension methods are, as there already is plenty of those examples in the web. Without further ado, here are some of my extension methods for the <strong>IDataReader:</strong></p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:blue;">class</span> <span style="color:#2b91af;">DataReaderExtensions</span></p>
<p style="margin:0;">{</p>
<p style="margin:0;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:blue;">int</span> ToInt(<span style="color:blue;">this</span> <span style="color:#2b91af;">IDataReader</span> reader, <span style="color:blue;">string</span> column)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">if</span> (reader[column] != <span style="color:#2b91af;">DBNull</span>.Value)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">return</span> <span style="color:#2b91af;">Convert</span>.ToInt32(reader[column]);</p>
<p style="margin:0;">}</p>
<p style="margin:0;"><span style="color:blue;">else</span></p>
<p style="margin:0;"><span style="color:blue;">return</span> 0;</p>
<p style="margin:0;">}</p>
<p style="margin:0;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:#2b91af;">Guid</span> ToGuid(<span style="color:blue;">this</span> <span style="color:#2b91af;">IDataReader</span> reader, <span style="color:blue;">string</span> column)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">if</span> (reader[column] != <span style="color:#2b91af;">DBNull</span>.Value)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">return</span> <span style="color:blue;">new</span> <span style="color:#2b91af;">Guid</span>(reader[column].ToString());</p>
<p style="margin:0;">}</p>
<p style="margin:0;"><span style="color:blue;">else</span></p>
<p style="margin:0;"><span style="color:blue;">return</span> <span style="color:#2b91af;">Guid</span>.Empty;</p>
<p style="margin:0;">}</p>
<p style="margin:0;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:#2b91af;">DateTime</span> ToDateTime(<span style="color:blue;">this</span> <span style="color:#2b91af;">IDataReader</span> reader, <span style="color:blue;">string</span> column)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">if</span> (reader[column] != <span style="color:#2b91af;">DBNull</span>.Value)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">return</span> <span style="color:#2b91af;">Convert</span>.ToDateTime(reader[column]);</p>
<p style="margin:0;">}</p>
<p style="margin:0;"><span style="color:blue;">else</span></p>
<p style="margin:0;"><span style="color:blue;">return</span> <span style="color:#2b91af;">DateTime</span>.MinValue;</p>
<p style="margin:0;">}</p>
<p style="margin:0;">
<p style="margin:0;"><span style="color:green;">//This converts an integer column to the given enum (T)</span></p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> T ToEnum&#60;T&#62;(<span style="color:blue;">this</span> <span style="color:#2b91af;">IDataReader</span> reader, <span style="color:blue;">string</span> column)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">if</span> (!<span style="color:blue;">typeof</span>(T).IsEnum)</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">throw</span> <span style="color:blue;">new</span> <span style="color:#2b91af;">ArgumentException</span>(<span style="color:blue;">typeof</span>(T).ToString() + <span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">" is not an Enum"</span>);</p>
<p style="margin:0;">}</p>
<p style="margin:0;">
<p style="margin:0;"><span style="color:blue;">return</span> (T)<span style="color:#2b91af;">Enum</span>.ToObject(<span style="color:blue;">typeof</span>(T), reader.ToInt(column));</p>
<p style="margin:0;">}</p>
</div>
<p>I put only some examples to get the idea through, but with similar pattern you can easily add support to all the types you need.</p>
<p>After that I can convert the columns with less code:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;"><span style="color:green;">//product.ProductID = Tools.GetInt(reader, "ProductID");</span></p>
<p style="margin:0;"><span style="color:green;">//product.ProductName = Tools.GetString(reader, "ProductName");</span></p>
<p style="margin:0;"><span style="color:green;">//product.UnitPrice = Tools.GetDouble(reader, "UnitPrice");</span></p>
<p style="margin:0;"><span style="color:green;">//product.Discontinued = Tools.GetBool(reader, "Discontinued");</span></p>
<p style="margin:0;">
<p style="margin:0;">product.ProductID = reader.ToInt(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>);</p>
<p style="margin:0;">product.ProductName = reader.ToString(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductName"</span>);</p>
<p style="margin:0;">product.UnitPrice = reader.ToDouble(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"UnitPrice"</span>);</p>
<p style="margin:0;">product.Discontinued = reader.ToBoolean(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"Discontinued"</span>);</p>
</div>
<p>The difference might not seem that big, but when typing that routinely line after line, you'll notice the difference. It is also easier to read.</p>
<h3>How about enums?</h3>
<p>Earlier I showed the code of <strong>ToEnum&#60;T&#62;</strong> -extension method that converts an integer (usually primary/foreign key in a table) to an enum.</p>
<p>Let's say I have <strong>Product</strong> -type and <strong>Category</strong>-enum like this:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">class</span> <span style="color:#2b91af;">Product</span></p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">int</span> ProductID { <span style="color:blue;">get</span>; <span style="color:blue;">set</span>; }</p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">string</span> ProductName { <span style="color:blue;">get</span>; <span style="color:blue;">set</span>; }</p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">double</span> UnitPrice { <span style="color:blue;">get</span>; <span style="color:blue;">set</span>; }</p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">bool</span> Discontinued { <span style="color:blue;">get</span>; <span style="color:blue;">set</span>; }</p>
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:#2b91af;">Category</span> Category { <span style="color:blue;">get</span>; <span style="color:blue;">set</span>; }</p>
<p style="margin:0;">}</p>
<p style="margin:0;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">enum</span> <span style="color:#2b91af;">Category</span></p>
<p style="margin:0;">{</p>
<p style="margin:0;">Beverage = 1,</p>
<p style="margin:0;">Condiments = 2</p>
<p style="margin:0;">}</p>
</div>
<p>I can convert the foreign key in the Products -table into Category -enum with the extension method, <strong>if </strong>the ID's of the primary key match in the Categories -table:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;">product.Category = reader.ToEnum&#60;<span style="color:#2b91af;">Category</span>&#62;(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"CategoryID"</span>);</p>
</div>
<h3>Think big - add the extension method to interface or base-type</h3>
<p>Here is signature of one extension method:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:blue;">int</span> ToInt(<span style="color:blue;">this</span> <span style="color:#2b91af;">IDataReader</span> reader, <span style="color:blue;">string</span> column)</p>
</div>
<p>First comes the type you want to extend (IDataReader) and after that one extra parameter, if needed (column name in this case).</p>
<p>For the type parameter, I have chosen <strong>IDataReader</strong>. I used to have <strong>SqlDataReader</strong>, but then I realized that these extension methods would work with <em>any</em> data reader, as long as it implements the IDataReader. This made them more reusable, though I rarely use other than SqlDataReader.</p>
<p>Here I made sure that the extension methods work with native .NET readers that implement the IDataReader:</p>
<div style="border:1px solid blue;background:#f4f4f4 none repeat scroll 0 50%;font-size:10pt;color:black;font-family:arial;padding:2px;">
<p style="margin:0;"><span style="color:blue;">public</span> <span style="color:blue;">static</span> <span style="color:blue;">void</span> Test()</p>
<p style="margin:0;">{</p>
<p style="margin:0;"><span style="color:blue;">int</span> pid;</p>
<p style="margin:0;"><span style="color:#2b91af;">SqlDataReader</span> sqlReader;</p>
<p style="margin:0;">pid = sqlReader.ToInt(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>);</p>
<p style="margin:0;"><span style="color:#2b91af;">OleDbDataReader</span> oleDBReader;</p>
<p style="margin:0;">pid = oleDBReader.ToInt(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>);</p>
<p style="margin:0;"><span style="color:#2b91af;">OdbcDataReader</span> odbcDataReader;</p>
<p style="margin:0;">pid = odbcDataReader.ToInt(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>);</p>
<p style="margin:0;"><span style="color:#2b91af;">DbDataReader</span> dbDataReader;</p>
<p style="margin:0;">pid = dbDataReader.ToInt(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>);</p>
<p style="margin:0;"><span style="color:#2b91af;">OracleDataReader</span> oracleReader;</p>
<p style="margin:0;">pid = oracleReader.ToInt(<span style="background:yellow none repeat scroll 0 50%;font-weight:bold;color:red;">"ProductID"</span>);</p>
<p style="margin:0;">}</p>
</div>
<h3>Extension methods aren't really that confusing</h3>
<p>The blue arrows and the tooltip in the intellisense menu reveal that those are just extension methods, if you are afraid that somebody gets confused:</p>
<p><a href="http://jemm.files.wordpress.com/2008/02/image.png"><img style="border:0 none;" src="http://jemm.files.wordpress.com/2008/02/image-thumb.png" border="0" alt="image" width="726" height="235" /></a></p>
<h3>Conclusion</h3>
<p>Extension methods help to make the .NET Framework more usable to your needs. Downside is that you'll easily get dependent on them, but just add them to your common tools -class that you can attach to your own projects and they'll tag along.</p>
<p>In projects related to work they may require some team-wide agreement, but the same applies to all the other helper classes, too.</p>
<p><a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fblog.jemm.net%2f2008%2f02%2f01%2fusing-extension-methods-with-a-data-reader%2f"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fblog.jemm.net%2f2008%2f02%2f01%2fusing-extension-methods-with-a-data-reader%2f&#38;bgcolor=0066FF" border="0" alt="kick it on DotNetKicks.com" /></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Date Formating Function In VS]]></title>
<link>http://danasegarane.wordpress.com/2008/01/25/date-formating-function-in-vs/</link>
<pubDate>Fri, 25 Jan 2008 08:57:38 +0000</pubDate>
<dc:creator>danasegarane</dc:creator>
<guid>http://danasegarane.wordpress.com/2008/01/25/date-formating-function-in-vs/</guid>
<description><![CDATA[Hi ,
     I have seen developers struggling to convert a string to valid date. This MSDN link us]]></description>
<content:encoded><![CDATA[<p>Hi ,</p>
<p>     I have seen developers struggling to convert a string to valid date. This MSDN link uses the Date.ToString Method to Format Strings</p>
<p><a href="http://msdn2.microsoft.com/en-us/library/system.datetime.parse.aspx">http://msdn2.microsoft.com/en-us/library/system.datetime.parse.aspx</a></p>
<p>Hope this is helpful to others</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Di sera...]]></title>
<link>http://scompo.wordpress.com/2008/01/21/di-sera/</link>
<pubDate>Sun, 20 Jan 2008 22:36:40 +0000</pubDate>
<dc:creator>scompo</dc:creator>
<guid>http://scompo.wordpress.com/2008/01/21/di-sera/</guid>
<description><![CDATA[Scrivo.. Niente da fare.. E&#8217; così..
Allora.. Ho scoperto oggi le versioni Express del VisualS]]></description>
<content:encoded><![CDATA[<p>Scrivo.. Niente da fare.. E' così..</p>
<p>Allora.. Ho scoperto oggi le <a href="http://www.microsoft.com/express/download/" title="express" target="_blank">versioni Express del VisualStudio di Microsoft</a>.. Che come saprete costa un'infinità.. Beh, per ora ho fatto solamente uno stupido programmino in VisualBasic, ma per quel che mi riguarda è andato abbastanza bene sia lo sviluppo che il resto.. Si effettivamente è presto per dire come me lo vedo.. Ma visto che non programmo da secoli è un inizio per riprendere in mano un po' la programmazione..</p>
<p>Finita la parte tecnica del post parlo un po' delle mie giornate..</p>
<p>Oggi è stato davvero bello con te..</p>
<p>Te invece mi  piace star fino a tardi a parlarti e son contento tu sia felice :)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[C&oacute;digo de ejemplo del libro &ldquo;Inside Microsoft Windows SharePoint Services 3.0&rdquo;]]></title>
<link>http://jdieguez.wordpress.com/2008/01/07/cdigo-de-ejemplo-del-libro-inside-microsoft-windows-sharepoint-services-30/</link>
<pubDate>Mon, 07 Jan 2008 18:33:10 +0000</pubDate>
<dc:creator>jdieguez</dc:creator>
<guid>http://jdieguez.wordpress.com/2008/01/07/cdigo-de-ejemplo-del-libro-inside-microsoft-windows-sharepoint-services-30/</guid>
<description><![CDATA[En noviembre del año pasado apareció en MSDN dos capítulos del libro &#8220;Inside Microsoft Wind]]></description>
<content:encoded><![CDATA[<p>En noviembre del año pasado apareció en MSDN dos capítulos del libro <a target="_blank" href="http://jdieguez.wordpress.com/2007/11/29/inside-microsoft-windows-sharepoint-services-30"><strong>"Inside Microsoft Windows SharePoint Services 3.0"</strong></a></p>
<p>Los dos capítulos publicados me parecieron magníficos, prácticos ilustrativos y reflejaban un profundo conocimiento de los WSS por parte del autor.</p>
<p>A raíz de esta lectura conseguí el libro. Llevo unos días leyendolo  y me parece el mejor texto sobre WSS de lo que he leído hasta ahora.<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-09.jpg"><img border="0" width="240" src="http://jdieguez.files.wordpress.com/2008/01/07012008-09-thumb.jpg" alt="07012008_09" height="240" /></a></p>
<p>Ted Pattison uno de los autores del libro ha colgado en su página los ejemplos de código que acompañan el libro.<br />
<a href="http://tedpattison.net/downloads.aspx" title="http://tedpattison.net/downloads.aspx"><strong>http://tedpattison.net/downloads.aspx</strong></a></p>
<p>Se trata de proyectos completos de VisualStudio listos para ejecutar y probar cosas descritas en el libro. Los ejemplos igual que el libro son muy practicas, claros e ilustrativos</p>
<p>Por ejemplo el proyecto <a target="_blank" href="http://tedpattison.net/downloads/CustomSitePages.zip"><strong>CustomSitePages.zip</strong></a> permite entender como desplegar nuevas funcionalidades para un sitio SharePoint por medio de características (features). En el ejemplo se despliega una característica que provisiona varias páginas de sitio (paginas .aspx que pueden contener WebParts).<br />
También habilita en el menú de navegación superior el enlace a la paginas provisonadas.</p>
<p>Descarguemos el proyecto y revisemos algunos detalles:<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-01.jpg"><img border="0" width="599" src="http://jdieguez.files.wordpress.com/2008/01/07012008-01-thumb.jpg" alt="07012008_01" height="340" style="border-width:0;" /></a></p>
<p>- Para automatizar el despliegue el proyecto incorpora el fichero install.bat que copia los ficheros necesarios al directorio 12\Template, instala la feature con stsadm y recicla el app_pool correspondiente.<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-02.jpg"><img border="0" width="514" src="http://jdieguez.files.wordpress.com/2008/01/07012008-02-thumb.jpg" alt="07012008_02" height="398" style="border-width:0;" /></a></p>
<p>- El fichero .bat se ejecuta automáticamente después de que se realice una compilación en VisualStudio. Esto se hace configurando la opción Post-Build event del proyecto.<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-03.jpg"><img border="0" width="523" src="http://jdieguez.files.wordpress.com/2008/01/07012008-03-thumb.jpg" alt="07012008_03" height="330" style="border-width:0;" /></a></p>
<p>- Las paginas .aspx están incluidas en el proyecto y se provisionan por medio del bloque <strong>Module</strong> del fichero <strong>elements.xml</strong> de la característica descrita en el fichero<strong> feature.xml</strong>.<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-04.jpg"><img border="0" width="560" src="http://jdieguez.files.wordpress.com/2008/01/07012008-04-thumb.jpg" alt="07012008_04" height="99" style="border-width:0;" /></a></p>
<p>- Configuramos las paginas .aspx para que contengan los WebParts determinados en las zonas determinadas. Estos se configura  por medio del bloque <strong>AllUsersWebPart WebPartZoneID.<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-05.jpg"><img border="0" width="563" src="http://jdieguez.files.wordpress.com/2008/01/07012008-05-thumb.jpg" alt="07012008_05" height="273" style="border-width:0;" /></a>  </strong><strong>- En la descripción de la característica (fichero<strong> feature.xml</strong>) se indicada la assemby y la clase que procesa el evento de activación y desactivación de la característica.<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-06.png"><img border="0" width="502" src="http://jdieguez.files.wordpress.com/2008/01/07012008-06-thumb.png" alt="07012008_06" height="357" style="border-width:0;" /></a></p>
<p></strong>- EL proyecto incluye la clase <strong>FeatureReceiver</strong>(fichero <strong>FeatureReceiver.cs</strong>) en la que se hace el tratamiento de los eventos de activación/desactivación de la característica.<br />
En la activación se hace uso del objeto<strong> <a target="_blank" href="http://www.sharepointblogs.com/tbaginski/archive/2007/12/26/how-to-programmatically-customize-site-navigation-in-wss-3-0-and-moss-2007.aspx">site.Navigation.TopNavigationBar</a></strong> que nos permite manipular la barra de navegación superior del sitio para añadir opciones de menú que enlacen con las paginas provisonadas.<br />
<a href="http://jdieguez.files.wordpress.com/2008/01/07012008-07.jpg"><img border="0" width="654" src="http://jdieguez.files.wordpress.com/2008/01/07012008-07-thumb.jpg" alt="07012008_07" height="480" style="border-width:0;" /></a></p>
<p>- Solo tenemos que pulsar <strong>F5(build)</strong> para que todo funcione, se compila el proyecto, se copian los ficheros y se instala la característica(se ejecutara el fichero<strong> install.bat</strong>).</p>
<p>- Ahora activamos la característica en la url: <strong>http://site/_layouts/ManageFeatures.aspx?Scope=Site</strong></p>
<p>- Ya aparece el nuevo menú, podemos navegar a las paginas provisionadas en la característica que acabamos de activar. Por ejemplo la pagina poblada de Webpart.</p>
<p><a href="http://jdieguez.files.wordpress.com/2008/01/07012008-08.jpg"><img border="0" width="790" src="http://jdieguez.files.wordpress.com/2008/01/07012008-08-thumb.jpg" alt="07012008_08" height="461" style="border-width:0;" /></a></p>
<p><em>Hay<strong> muchos más ejemplo que acompañan el libro</strong>, tanto los ejemplos como el libro es una referencia interesante para todos aquellos que están metidos en el tema de sharepoint.</em></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Remember to verify references after Visual Studio 2008 upgrade]]></title>
<link>http://blog.jemm.net/2007/12/28/remember-to-verify-references-after-visual-studio-2008-upgrade/</link>
<pubDate>Fri, 28 Dec 2007 08:31:50 +0000</pubDate>
<dc:creator>jemm</dc:creator>
<guid>http://blog.jemm.net/2007/12/28/remember-to-verify-references-after-visual-studio-2008-upgrade/</guid>
<description><![CDATA[You may get the following error in Visual Studio 2008 when trying to compile a test project:
Unable ]]></description>
<content:encoded><![CDATA[<p>You may get the following error in <strong>Visual Studio 2008</strong> when trying to compile a test project:</p>
<blockquote><p>Unable to set TestContext property for the class x. System.ArgumentException: Object of type 'Microsoft.VisualStudio.TestTools.TestTypes.Unit.UnitTestAdapterContext' cannot be converted to type 'Microsoft.VisualStudio.TestTools.UnitTesting.TestContext'</p>
</blockquote>
<p>This just happened to me and the reason was a reference that pointed to the old assembly of the Visual Studio 2005. The project was just migrated to the new version, but the old reference had remained.</p>
<p>To fix this, follow these steps:</p>
<ol>
<li>Remove the old reference (same name as in step 3)</li>
<li>Go to <strong>Project / References... </strong></li>
<li>Select <strong>Microsoft.VisualStudio.QualityTools.UnitTestFramework</strong> (version 9.0.0.0!) and Ok </li>
</ol>
<p> <img style="border-right:0;border-top:0;border-left:0;border-bottom:0;" height="464" alt="UnitTestReference" src="http://jemm.files.wordpress.com/2007/12/unittestreference.png" width="570" border="0" />
<p>I found the answer to this trivial error from the <a href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2459840&#38;SiteID=1">MSDN Forums</a>.</p>
]]></content:encoded>
</item>

</channel>
</rss>
