<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://cs.vbcity.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Mike McIntyre's .NET Journal</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2008 (Build: 30417.1769)</generator><item><title>Visual Basic 2008 - Create a DataTable From Linq Query Results</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/11/06/visual-basic-2008-create-a-datatable-from-linq-query-results.aspx</link><pubDate>Fri, 06 Nov 2009 15:40:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:273</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Below is a class that contains a method that can create a DataTable object form Linq Query Results. I find the LINQToDataTable method really handy when I am creating Crystal reports. Crystal Reports love to report on DataTables.&lt;/p&gt;
&lt;p&gt;The Imports are essential to the LINQToDataTable method in the LinqUtilities class.&lt;/p&gt;
&lt;div style="FONT-FAMILY:Courier New;BACKGROUND:white;COLOR:black;FONT-SIZE:10pt;"&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;&lt;span style="COLOR:blue;"&gt;Imports&lt;/span&gt; System.Data&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;&lt;span style="COLOR:blue;"&gt;Imports&lt;/span&gt; System.Linq&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;&lt;span style="COLOR:blue;"&gt;Imports&lt;/span&gt; System.Reflection&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;&lt;/span&gt; &lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;&lt;span style="COLOR:blue;"&gt;Public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Class&lt;/span&gt; LinqUtilities&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;    &lt;span style="COLOR:blue;"&gt;Friend&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Shared&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Function&lt;/span&gt; LINQToDataTable(&lt;span style="COLOR:blue;"&gt;Of&lt;/span&gt; T)(&lt;span style="COLOR:blue;"&gt;ByVal&lt;/span&gt; iEnumerableList &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; IEnumerable(&lt;span style="COLOR:blue;"&gt;Of&lt;/span&gt; T)) &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; DataTable&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        &lt;span style="COLOR:blue;"&gt;Dim&lt;/span&gt; newDataTable &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;New&lt;/span&gt; DataTable()&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        &lt;span style="COLOR:blue;"&gt;Dim&lt;/span&gt; thePropertyInfo &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; PropertyInfo() = &lt;span style="COLOR:blue;"&gt;Nothing&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        &lt;span style="COLOR:blue;"&gt;If&lt;/span&gt; iEnumerableList &lt;span style="COLOR:blue;"&gt;Is&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Nothing&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Then&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            &lt;span style="COLOR:blue;"&gt;Return&lt;/span&gt; newDataTable&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        &lt;span style="COLOR:blue;"&gt;End&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;If&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        &lt;span style="COLOR:blue;"&gt;For&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Each&lt;/span&gt; item &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; T &lt;span style="COLOR:blue;"&gt;In&lt;/span&gt; iEnumerableList&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            &lt;span style="COLOR:blue;"&gt;If&lt;/span&gt; thePropertyInfo &lt;span style="COLOR:blue;"&gt;Is&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Nothing&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Then&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                thePropertyInfo = (&lt;span style="COLOR:blue;"&gt;DirectCast&lt;/span&gt;(item.[GetType](), Type)).GetProperties()&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                &lt;span style="COLOR:blue;"&gt;For&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Each&lt;/span&gt; propInfo &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; PropertyInfo &lt;span style="COLOR:blue;"&gt;In&lt;/span&gt; thePropertyInfo&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                    &lt;span style="COLOR:blue;"&gt;Dim&lt;/span&gt; columnDataType &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; Type = propInfo.PropertyType&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                    &lt;span style="COLOR:blue;"&gt;If&lt;/span&gt; (columnDataType.IsGenericType) &lt;span style="COLOR:blue;"&gt;AndAlso&lt;/span&gt; (columnDataType.GetGenericTypeDefinition() &lt;span style="COLOR:blue;"&gt;Is&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;GetType&lt;/span&gt;(Nullable(&lt;span style="COLOR:blue;"&gt;Of&lt;/span&gt; ))) &lt;span style="COLOR:blue;"&gt;Then&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                        columnDataType = columnDataType.GetGenericArguments()(0)&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                    &lt;span style="COLOR:blue;"&gt;End&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;If&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                    newDataTable.Columns.Add(&lt;span style="COLOR:blue;"&gt;New&lt;/span&gt; DataColumn(propInfo.Name, columnDataType))&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                &lt;span style="COLOR:blue;"&gt;Next&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            &lt;span style="COLOR:blue;"&gt;End&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;If&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            &lt;span style="COLOR:blue;"&gt;Dim&lt;/span&gt; dr &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; DataRow = newDataTable.NewRow()&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            &lt;span style="COLOR:blue;"&gt;For&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Each&lt;/span&gt; pi &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; PropertyInfo &lt;span style="COLOR:blue;"&gt;In&lt;/span&gt; thePropertyInfo&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;                dr(pi.Name) = &lt;span style="COLOR:blue;"&gt;If&lt;/span&gt;(pi.GetValue(item, &lt;span style="COLOR:blue;"&gt;Nothing&lt;/span&gt;) &lt;span style="COLOR:blue;"&gt;Is&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Nothing&lt;/span&gt;, DBNull.Value, pi.GetValue(item, &lt;span style="COLOR:blue;"&gt;Nothing&lt;/span&gt;))&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            &lt;span style="COLOR:blue;"&gt;Next&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            newDataTable.Rows.Add(dr)&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        &lt;span style="COLOR:blue;"&gt;Next&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        &lt;span style="COLOR:blue;"&gt;Return&lt;/span&gt; newDataTable&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;    &lt;span style="COLOR:blue;"&gt;End&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Function&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt; &lt;/span&gt;&lt;/pre&gt;
&lt;pre style="MARGIN:0px;PADDING-LEFT:30px;"&gt;&lt;span style="font-size:x-small;"&gt;&lt;span style="COLOR:blue;"&gt;End&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Class&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Below is example code&amp;nbsp;that uses Linq to query for all the buttons on a Windows Forms form and calls the LINQToDataTable method to put the query results into a DataTable.&lt;/p&gt;
&lt;div style="font-family:Courier New;background:white;color:black;font-size:10pt;"&gt;
&lt;pre style="margin:0px;padding-left:30px;"&gt;&lt;span style="font-size:x-small;"&gt;&lt;span style="color:blue;"&gt;Dim&lt;/span&gt; newDataTable &lt;span style="color:blue;"&gt;As&lt;/span&gt; DataTable = _&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="margin:0px;padding-left:30px;"&gt;&lt;span style="font-size:x-small;"&gt;        LinqUtilities.LINQToDataTable(&lt;span style="color:blue;"&gt;From&lt;/span&gt; btn &lt;span style="color:blue;"&gt;In&lt;/span&gt; &lt;span style="color:blue;"&gt;Me&lt;/span&gt;.Controls _&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="margin:0px;padding-left:30px;"&gt;&lt;span style="font-size:x-small;"&gt;            &lt;span style="color:blue;"&gt;Where&lt;/span&gt; &lt;span style="color:blue;"&gt;TypeOf&lt;/span&gt; (btn) &lt;span style="color:blue;"&gt;Is&lt;/span&gt; Button &lt;span style="color:blue;"&gt;Select&lt;/span&gt; btn)&lt;/span&gt;&lt;/pre&gt;
&lt;pre style="margin:0px;"&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;Mike McIntyre&amp;#39;s &lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://cs.vbcity.com/blogs/mike-mcintyre/default.aspx" class="null"&gt;&lt;span style="color:#666666;"&gt;.Net Journal&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://www.getdotnetcode.com/" class="null"&gt;&lt;span style="color:#000000;"&gt;getdotnetcode.com&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=273" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/Linq/default.aspx">Linq</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/DataTable/default.aspx">DataTable</category></item><item><title>SQL Join Summary Query Example</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/11/04/sql-join-summary-query-example.aspx</link><pubDate>Thu, 05 Nov 2009 02:57:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:272</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Heres a short exmaple to get you thinking about how query results&amp;nbsp;can be joined to tables for purposes such as attaching summary data.&lt;/p&gt;
&lt;p&gt;The example below shows how a query that sums total sales for a product can be joined to a query that selects product ID and product name from the Products table in Microsoft&amp;#39;s Adventure Works sample database.&lt;/p&gt;
&lt;p style="PADDING-LEFT:30px;"&gt;SELECT&lt;br /&gt;PROD.ProductID,&lt;br /&gt;PROD.[Name],&lt;br /&gt;ISNULL(SALES.ProductSales,0) ProductSales&lt;br /&gt;FROM Production.Product PROD&lt;br /&gt;LEFT JOIN&lt;br /&gt;(&lt;br /&gt;SELECT ProductId, &lt;br /&gt;SUM(LineTotal) ProductSales &lt;br /&gt;FROM Sales.SalesOrderDetail SOD&lt;br /&gt;GROUP BY ProductID&lt;br /&gt;) SALES&lt;br /&gt;ON PROD.ProductID = SALES.ProductID&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The SELECT query within the parentheses returns a result with two columns: 1) ProductID and 2) ProductSales.&lt;/p&gt;
&lt;p&gt;The query within parentheses&amp;nbsp;is assigned&amp;nbsp;the alias &amp;#39;SALES&amp;#39; which is used to construct the ON clause that joins SALES to the Product table.&lt;/p&gt;
&lt;p&gt;Because&amp;nbsp;the SALES query returns ProductID (SALES.ProductID)&amp;nbsp;it can be joined to PROD.ProductID.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;Mike McIntyre&amp;#39;s &lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://cs.vbcity.com/blogs/mike-mcintyre/default.aspx" class="null"&gt;&lt;span style="color:#666666;"&gt;.Net Journal&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://www.getdotnetcode.com/" class="null"&gt;&lt;span style="color:#000000;"&gt;getdotnetcode.com&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=272" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/join/default.aspx">join</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/sql/default.aspx">sql</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/Summary/default.aspx">Summary</category></item><item><title>Visual Studio 2010  - Changes to Help System</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/11/03/visual-studio-2010-changes-to-help-system.aspx</link><pubDate>Tue, 03 Nov 2009 15:01:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:271</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://cs.vbcity.com/blogs/mike-mcintyre/rsscomments.aspx?PostID=271</wfw:commentRss><comments>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/11/03/visual-studio-2010-changes-to-help-system.aspx#comments</comments><description>&lt;p&gt;There are changes to the Visual Studio 2010 help system that you&amp;#39;ll want to learn about.&lt;/p&gt;
&lt;p&gt;For example, the new &amp;#39;Manage Help Settings&amp;#39; menu item:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.VS2010/VS2010ManageHelpSettingsMenu.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;The menu item opens the new &amp;#39;Help Library Manager&amp;#39; dialog:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.VS2010/VS2010HelpLibraryManager.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;From MSDN: &amp;quot;The Help Library Manager (HLM) application allows you to manage product documentation in the local Microsoft Help 3.0 content store. Using HLM, you can find and install new content from the web or from media, go online to get updates for your offline content, and remove offline content. The Help Library Manager also manages settings that allow you to customize your help experience.&amp;quot;&lt;/p&gt;
&lt;p&gt;Read more at: &lt;a href="http://127.0.0.1/help/1/ms.help?method=page&amp;amp;id=7415EE68-6B71-45CA-9773-15E236AEBC71&amp;amp;product=vs&amp;amp;productversion=100&amp;amp;locale=en-US&amp;amp;topicversion=0&amp;amp;SQM=2" class="null"&gt;Help Library Manager&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=271" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/help/default.aspx">help</category></item><item><title>Silverlight 3 - Enabling the Silverlight 'Out of Browser' Experience</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/23/silverlight-3-enabling-the-silverlight-out-of-browser-experience.aspx</link><pubDate>Fri, 23 Oct 2009 13:09:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:253</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&amp;nbsp;Silverlight 3 applications can be installed as local applications on PCs and MACs.&lt;/p&gt;
&lt;p&gt;This is a brief &amp;#39;how to&amp;#39; for enabling, installing, and&amp;nbsp;removing&amp;nbsp;a Silverlight 3 out of browser&amp;nbsp;applications.&lt;/p&gt;
&lt;p&gt;1. Use Visual Studio 2008 or 2010 to create a Silverlight&amp;nbsp;3&amp;nbsp;project.&lt;/p&gt;
&lt;p&gt;2. Open the Silverlight 3 project&amp;#39;s properties dialog. Select the &amp;#39;Silverlight&amp;#39; tab. Check the &amp;#39;Enable running application out of the browser&amp;#39;. Click the &amp;#39;Out-of-Browser Settings...&amp;#39; button.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.Silverlight3/Silverlight3PropertiesDialog.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;3. The &amp;#39;Out-of-Browser Settings&amp;#39; dialog opens. Use it to configure your Silverlight 3 application for out of browser installation.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.Silverlight3/Silverlight3OutOfBrowserSettingsDialog.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;4. Run your application.&amp;nbsp; Right-click a page in your application and select &amp;#39;Install..&amp;#39; menu item.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.Silverlight3/Silverlight3InstallLocal.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;5. The &amp;#39;Install application&amp;#39; dialog opens. Use it to install short cuts to your application.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.Silverlight3/Silverlight3InstallApplicationDialog.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;6. The Silverlight 3 out of browser application short cut on the desktop:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.Silverlight3/Silverlight3AppIconOnDesktop.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;7. Use the short cut to launch the application on the computer. Here&amp;#39;s a screen shot of my sample application running locally on my computer:&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.Silverlight3/Silverlight3LocalApplicationRunning.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;8 To remove the Silverlight 3 out of browser application from your&amp;nbsp;computer: run it, right-click a page in the application, and select the &amp;#39;Remove this application...&amp;#39; menu item.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://cs.vbcity.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/mike-mcintyre.Silverlight3/Silverlight3RemoveLocalApp.jpg" alt="" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=253" width="1" height="1"&gt;</description></item><item><title>Visual Basic 2010 and .NET Framework 4 Deliver Beta 2 in Final Stretch to March 22 Launch</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/20/visual-basic-2010-and-net-framework-4-deliver-beta-2-in-final-stretch-to-march-22-launch.aspx</link><pubDate>Tue, 20 Oct 2009 14:44:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:249</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&amp;nbsp;Read all about it at:&amp;nbsp; &lt;a target="_blank" href="http://www.microsoft.com/presspass/press/2009/oct09/10-19vsfinalstretchpr.mspx" class="null"&gt;Final Stretch&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=249" width="1" height="1"&gt;</description></item><item><title>Search for Files with a Specific Extension in and below a System Special Folder</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/14/search-for-files-with-a-specific-extension-in-and-below-a-system-special-folder.aspx</link><pubDate>Thu, 15 Oct 2009 02:19:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:248</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>The Visual Basic My.Computer.FileSystem GetFiles method can be used to search for files with a specific extension in or below a specific directory:

Below is a function for that purpose:
...(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/14/search-for-files-with-a-specific-extension-in-and-below-a-system-special-folder.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=248" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/GetFiles/default.aspx">GetFiles</category></item><item><title>Validation and the Windows Forms ErrorProvider</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/10/validation-and-the-windows-forms-errorprovider.aspx</link><pubDate>Sun, 11 Oct 2009 03:03:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:247</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&lt;span style="font-size:small;"&gt;Download source code here -&amp;gt;&amp;nbsp; &lt;/span&gt;&lt;a href="http://www.getdotnetcode.com/nexDotNet/020036/020036.htm"&gt;&lt;span style="font-size:small;"&gt;Validation and the Windows Forms ErrorProvider Component&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve noticed that not a lot of people take advantage of the Windows Forms&amp;nbsp;built in user interface for indicating that a control on a form has an error associated with it - the ErrorProvider component.&lt;/p&gt;
&lt;p&gt;The&amp;nbsp;ErrorProvider presents a simple mechanism for indicating to the end user that a control on a form has an error associated with it. If an error description string is specified for the control, an icon appears next to the control. The icon flashes in the manner specified by BlinkStyle, at the rate specified by BlinkRate. When the mouse hovers over the icon, a ToolTip appears showing the error description string.&lt;/p&gt;
&lt;p&gt;Typically, you use ErrorProvider in association with data-bound controls. When using ErrorProvider with data-bound controls, you must specify the ContainerControl, either in the constructor or by setting the ContainerControl property.&lt;/p&gt;
&lt;p&gt;The Visual Studio project download at the link above demonstrates how to combine validation with the ErrorProvider.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;Mike McIntyre&amp;#39;s &lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://cs.vbcity.com/blogs/mike-mcintyre/default.aspx" class="null"&gt;&lt;span style="color:#666666;"&gt;.Net Journal&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://www.getdotnetcode.com/" class="null"&gt;&lt;span style="color:#000000;"&gt;getdotnetcode.com&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=247" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/WindowsForms/default.aspx">WindowsForms</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/ErrorProvider/default.aspx">ErrorProvider</category></item><item><title>Visual Basic 2010 - Nullable Optional Parameters</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/10/visual-basic-2010-nullable-optional-parameters.aspx</link><pubDate>Sat, 10 Oct 2009 20:40:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:246</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&amp;nbsp;Nullable types were a welcome addition to Visual Basic 2008.&amp;nbsp; In Visual Basic 2010 you can use them as parameters.&amp;nbsp; Here are two examples:&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:green;"&gt;&amp;#39; Assign Nothing as the default value for nullable optional parameter.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;Sub&lt;/span&gt; Add(&lt;span style="COLOR:blue;"&gt;ByVal&lt;/span&gt; x &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Integer&lt;/span&gt;, &lt;span style="COLOR:blue;"&gt;ByVal&lt;/span&gt; y &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Integer&lt;/span&gt;, &lt;span style="COLOR:blue;"&gt;Optional&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;ByVal&lt;/span&gt; z &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Integer&lt;/span&gt;? = &lt;span style="COLOR:blue;"&gt;Nothing&lt;/span&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:green;"&gt;&amp;#39; code removed for brevity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;End&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Sub&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:green;"&gt;&amp;#39; Assign an integer value to a nullable optional paramter of type Double.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;Sub&lt;/span&gt; Process(&lt;span style="COLOR:blue;"&gt;ByVal&lt;/span&gt; x &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Integer&lt;/span&gt;, &lt;span style="COLOR:blue;"&gt;ByVal&lt;/span&gt; y &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Integer&lt;/span&gt;, &lt;span style="COLOR:blue;"&gt;Optional&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;ByVal&lt;/span&gt; z &lt;span style="COLOR:blue;"&gt;As&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Double&lt;/span&gt;? = 4)&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;mso-layout-grid-align:none;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:green;"&gt;&amp;#39; code removed for brevity&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="MARGIN:0in 0in 0pt;" class="MsoNormal"&gt;&lt;span style="FONT-SIZE:9.5pt;FONT-FAMILY:Consolas;mso-bidi-font-family:Consolas;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;End&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;Sub&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;Mike McIntyre&amp;#39;s &lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://cs.vbcity.com/blogs/mike-mcintyre/default.aspx" class="null"&gt;&lt;span style="color:#666666;"&gt;.Net Journal&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;a target="_blank" href="http://www.getdotnetcode.com/" class="null"&gt;&lt;span style="color:#000000;"&gt;getdotnetcode.com&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-top:0px;margin-bottom:0px;"&gt;&lt;span style="font-family:Verdana;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=246" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/visual+basic+2010/default.aspx">visual basic 2010</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/nullable+optional+parameters/default.aspx">nullable optional parameters</category></item><item><title>Visual Basic 2010 - Array Literals</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/08/visual-basic-2010-array-literals.aspx</link><pubDate>Thu, 08 Oct 2009 20:30:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:245</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description> Visual Basic 2010 array litererals provide a shortcut mechanism for declaring and filling arrays for types that can be inferred by the compiler.  Here a three examples:

        &amp;#39; Examples

        Dim a = {1, 2, 3} &amp;#39;infers Integer()

        Dim b = {1, 2, 3.5} &amp;#39;infers Double()

        Dim c = {&amp;quot;1&amp;quot;, &amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;} &amp;#39;infers String()

Becareful not to mix in types the compiler can not infer: 


        &amp;#39; WARNING: Make sure you used types that can be inferred.

        &amp;#39; The next example will generation a warning if OPTION STRICT ON

        &amp;#39;   or infer a type of Object if OPTION STRICT OFF

        Dim d = {1, &amp;quot;123&amp;quot;} &amp;#39;infers Object() (warning with Option Strict On)


Create multidimensional arrays with array literals:


        &amp;#39; Create multidimensional arrays by nesting array array literals:

        &amp;#39;Nested array literals can be used to produce multidimensional arrays:

        Dim f = {{1, 2, 3}, {4, 5, 6}} &amp;#39;infers Integer(,)

        Dim g = {({1, 2, 3}), ({4, 5, 6})} &amp;#39;infers Integer()() (jagged array)

...(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/08/visual-basic-2010-array-literals.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=245" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/visual+basic+10/default.aspx">visual basic 10</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/Visual+Studio+2010/default.aspx">Visual Studio 2010</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/array+literal/default.aspx">array literal</category></item><item><title>Visual Basic 2010 - Multiline Function Lambdas</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/06/visual-basic-2010-multiline-function-lambdas.aspx</link><pubDate>Tue, 06 Oct 2009 20:07:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:244</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>A multiline Function lambda is a lambda expression that represents a Function containing one or more statements. 



The “Function” keyword can be used to create a multiline lambda that returns a value.  The following examples how to create mutiline Function lambdas.  The first creates a multiline Function lambda and assigns it to a variable.  The second uses a multiline Function lamda inline.
...(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/06/visual-basic-2010-multiline-function-lambdas.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=244" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/Multiline/default.aspx">Multiline</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/lambda/default.aspx">lambda</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/function/default.aspx">function</category></item><item><title>Visual Basic 2010 - Multiline Sub Lambdas</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/05/visual-basic-2010-multiline-sub-lambdas.aspx</link><pubDate>Mon, 05 Oct 2009 19:52:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:243</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>A multiline Sub lambda is a lambda expression that represents a Sub containing one or more statements.  

Visual Basic 9.0 only supported lambdas that were a single expression that returned a value; for example, the following line was an error:

 

    &amp;#39;Error - Console.WriteLine doesn&amp;#39;t return a value

    Array.ForEach(nums, Function(n) Console.WriteLine(n))

 

With Visual Basic 10.0, lambdas can now contain expressions that do not return a value:

...(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/05/visual-basic-2010-multiline-sub-lambdas.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=243" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/visual+basic+10/default.aspx">visual basic 10</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/lambda/default.aspx">lambda</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/sub+lambda/default.aspx">sub lambda</category></item><item><title>VB 20010 - Continuing a Statement over Multiple Lines after a Comma</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/04/vb-20010-continuing-a-statement-over-multiple-lines-after-a-comma.aspx</link><pubDate>Sun, 04 Oct 2009 18:35:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:242</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>Visual Basic 2010 provides mechanisms to continue lines of a statment without the traditional _ (underline) character.

One mechanism is to contiue the statement on a new line after a comma......
...(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/10/04/vb-20010-continuing-a-statement-over-multiple-lines-after-a-comma.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=242" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/line+continuation/default.aspx">line continuation</category></item><item><title>MS SQL Server - Use Transact SQL CASE Expression To Sort Query Results</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/09/28/ms-sql-server-use-transace-sql-case-expression-sort-query-results.aspx</link><pubDate>Tue, 29 Sep 2009 03:00:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:240</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description>The transact SQL &amp;#39;CASE&amp;#39; expression is useful for a lot of things but did you know you can use it to sort your query results in special ways? Here&amp;#39;s a simple example......(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/09/28/ms-sql-server-use-transace-sql-case-expression-sort-query-results.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=240" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/sql/default.aspx">sql</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/CASE/default.aspx">CASE</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/sort/default.aspx">sort</category></item><item><title>Case Insentive Comparrisons with Visual Basic</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/09/27/case-insentive-comparrisons-with-visual-basic.aspx</link><pubDate>Sun, 27 Sep 2009 17:50:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:236</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><description> The .Net String class&amp;#39; ToUpper function can be used with Visual Basic code for case insensitve comparrisons.  Here&amp;#39;s an example:...(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/09/27/case-insentive-comparrisons-with-visual-basic.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=236" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/case+insensitive/default.aspx">case insensitive</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/ToUpper/default.aspx">ToUpper</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/String/default.aspx">String</category></item><item><title>Read a Comma Delimited File with the Visual BasicTextFieldParser Class</title><link>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/09/26/read-a-comma-delimited-file-with-the-visual-basictextfieldparser-class.aspx</link><pubDate>Sat, 26 Sep 2009 14:42:00 GMT</pubDate><guid isPermaLink="false">921a0936-6df9-4a08-8006-68f3b1747f32:234</guid><dc:creator>Mike McIntyre</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://cs.vbcity.com/blogs/mike-mcintyre/rsscomments.aspx?PostID=234</wfw:commentRss><comments>http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/09/26/read-a-comma-delimited-file-with-the-visual-basictextfieldparser-class.aspx#comments</comments><description>This blog post provides an example that shows how to use the VisualBasic TextFieldParser class to read in data from a comma delimited files....(&lt;a href="http://cs.vbcity.com/blogs/mike-mcintyre/archive/2009/09/26/read-a-comma-delimited-file-with-the-visual-basictextfieldparser-class.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://cs.vbcity.com/aggbug.aspx?PostID=234" width="1" height="1"&gt;</description><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/delimited/default.aspx">delimited</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/text/default.aspx">text</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/TextFieldParser/default.aspx">TextFieldParser</category><category domain="http://cs.vbcity.com/blogs/mike-mcintyre/archive/tags/file/default.aspx">file</category></item></channel></rss>