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

<channel>
	<title>Key2 Consulting Blogs &#187; Josh Robinson</title>
	<atom:link href="http://key2consulting.com/Blogs/author/josh-robinson/feed/" rel="self" type="application/rss+xml" />
	<link>http://key2consulting.com/Blogs</link>
	<description>BI, Data Warehousing, SharePoint and .NET</description>
	<lastBuildDate>Mon, 30 Apr 2012 17:47:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Updated SSIS Attunity Connectors for Teradata and Oracle Released</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/04/05/updated-ssis-attunity-connectors-for-teradata-and-oracle-released/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/04/05/updated-ssis-attunity-connectors-for-teradata-and-oracle-released/#comments</comments>
		<pubDate>Thu, 05 Apr 2012 18:09:07 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[Integration Services]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Attunity]]></category>
		<category><![CDATA[SSIS]]></category>

		<guid isPermaLink="false">http://3.62</guid>
		<description><![CDATA[I have used both the Teradata and Oracle connectors in the past.&#160; While there are some “gotcha’s” (for example you must have SQL Enterprise), overall they provide the fastest possible way to extract data from either of those two sources.&#160; v2.0 brings support for SQL 2012 and the latest releases of Teradata and Oracle, as [...]]]></description>
			<content:encoded><![CDATA[<p>I have used both the Teradata and Oracle connectors in the past.&#160; While there are some “gotcha’s” (for example you must have SQL Enterprise), overall they provide the fastest possible way to extract data from either of those two sources.&#160; v2.0 brings support for SQL 2012 and the latest releases of Teradata and Oracle, as well as bug fixes and enhancements.&#160; Interestingly, it appears that “v2.0” is only for SQL 2012 and “v1.2” is included and intended for SQL 2008 / 2008 R2.</p>
<p>I originally saw this as a <a href="http://blogs.msdn.com/b/mattm/archive/2012/04/04/microsoft-connectors-v2-0-for-oracle-and-teradata-now-available.aspx" target="_blank">post</a> by Matt Masson to the SSIS Team Blog.</p>
<p>You can <a href="http://www.microsoft.com/download/en/details.aspx?id=29283" target="_blank">download the updated connectors here</a>.&#160; Here is the overview from the download page:</p>
<h2>Overview</h2>
<p><b>Microsoft Connector Version 2.0 for Oracle by Attunity</b> &#8211; The Oracle source and destination components are written to achieve optimal performance when loading data into Oracle or unloading data from Oracle in the context of Microsoft SSIS.    <br /><b>Microsoft Connector Version 2.0 for Teradata by Attunity </b>- The components are written to achieve optimal performance when loading data into Teradata or unloading data from Teradata in the context of Microsoft SSIS.     <br />Microsoft SSIS Connectors by Attunity Version 2.0 is a minor release. It supports SQL Server 2012 Integration Services and includes bug fixes and support for updated Oracle and Teradata product releases.     <br />The following enhancements were made: </p>
<ul>
<li>Oracle Enhancement &#8211; LOB Support </li>
<li>Support was added for the following Oracle LOB types: CLOB, NCLOB and BLOB. These LOB types are supported by the Oracle Source component and the Oracle Destination component in array load mode. </li>
<li>Oracle and Teradata Bug Fixes – Some hot key issues were fixed in the Oracle and Teradata connectors UI. </li>
<li>Oracle and Teradata Bug Fixes – Localization issues were fixed in the Oracle and Teradata connectors. </li>
<li>Teradata Enhancement &#8211; Support for TPT API 14.0 and TPT API 13.10. </li>
<li>Support was added for Teradata 13.10 and Teradata 14.0 by supporting TPT API version 13.0 and TPT API version 14.0 (14.00.00.02 or higher). Previous versions of the TPT API are still supported. </li>
<li>Teradata Enhancement &#8211; Starting from Teradata 13.0 Teradata database supports DDL with no primary index which was introduced specifically for loading data faster into Teradata; these tables were not listed in the table dropdown list. </li>
<li>Teradata Bug Fix &#8211; Teradata DDL supports column names being reserved words. Teradata Connector could not work with tables having such columns. </li>
<li>Teradata Bug Fix &#8211; Teradata destination component failed to read problematic rows from the error table with the following error: “Errors while trying to read error tables. Invalid TPT operator”.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/04/05/updated-ssis-attunity-connectors-for-teradata-and-oracle-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Complete SQL 2012 Demo Build Script</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/04/03/complete-sql-2012-demo-build-script/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/04/03/complete-sql-2012-demo-build-script/#comments</comments>
		<pubDate>Tue, 03 Apr 2012 18:27:39 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[BI]]></category>
		<category><![CDATA[Configuration]]></category>
		<category><![CDATA[Demo]]></category>

		<guid isPermaLink="false">http://3.60</guid>
		<description><![CDATA[There is no need to download the 28GB BI Image X (which at the time of this writing hasn’t been updated to SQL 2012 RTM).&#160; There are instructions on how to build an all-up SQL 2012 and SharePoint 2010 demo VM with instructions for configuring all of the latest SQL 2012 tools including DQS, MDM, [...]]]></description>
			<content:encoded><![CDATA[<p>There is no need to download the <strong>28GB</strong> <a href="http://www.microsoft.com/download/en/details.aspx?id=29049" target="_blank">BI Image X</a> (which at the time of this writing hasn’t been updated to SQL 2012 RTM).&#160; There are instructions on how to build an all-up SQL 2012 and SharePoint 2010 demo VM with instructions for configuring all of the latest SQL 2012 tools including DQS, MDM, PowerPivot for SharePoint and more.&#160; <a href="http://social.technet.microsoft.com/wiki/contents/articles/3402.how-to-build-a-sql-server-2012-hyper-v-virtual-machine-kiwi-build.aspx" target="_blank">The full instructions are here</a>.&#160; This is a great way to familiarize yourself with a full deployment of the latest BI software from Microsoft.</p>
<p>Here’s the summary from the link above:</p>
<blockquote><p>This how-to article will guide you through the process of building a Hyper-V virtual machine with Microsoft SQL Server 2012, the latest Visual Studio 2010 development tools, SQL Server Data Tools (SSDT), and an assortment of other software products to create a test environment ready for testing and product demos.</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/04/03/complete-sql-2012-demo-build-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fix for Excessive VMWare Disk Activity On Host After Suspend or Shutdown</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/03/10/fix-for-excessive-vmware-disk-activity-on-host-after-suspend-or-shutdown/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/03/10/fix-for-excessive-vmware-disk-activity-on-host-after-suspend-or-shutdown/#comments</comments>
		<pubDate>Sat, 10 Mar 2012 21:32:12 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Server Management]]></category>
		<category><![CDATA[Virtual Machines]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://3.59</guid>
		<description><![CDATA[I use VMware to run 64-bit guest OS’s for development and testing on my laptop.&#160; (Windows 7 only allows 32-bit guests, Windows 8 incorporates Hyper-V so this limitation will go away soon).&#160; One of the nice benefits of running a VM is that I can suspend and bring it back online in a matter of [...]]]></description>
			<content:encoded><![CDATA[<p>I use VMware to run 64-bit guest OS’s for development and testing on my laptop.&#160; (Windows 7 only allows 32-bit guests, Windows 8 incorporates Hyper-V so this limitation will go away soon).&#160; One of the nice benefits of running a VM is that I can suspend and bring it back online in a matter of seconds each time I want to use the VM.&#160; Unfortunately, this comes with a negative side effect – the drive on the host that I am storing the VMs on thrashes for up to 15 minutes after VMWare was closed.&#160; At the end of the day, if I had just suspended my VM and tried to shut down the Windows 7 host OS, it would take 15 minutes to shut down the laptop.</p>
<p>Fortunately I <a href="http://heavy-disk-io-after-shutdown-in-vmware-workstation" target="_blank">found the fix</a> on a SharePoint blog.&#160; Essentially you have add a setting to the VMWare config file.&#160; For VMWare 7, the file is located here: C:ProgramDataVMwareVMware Workstationconfig.ini.&#160; The setting that you need to add is mainMem.useNamedFile = “false”.&#160; One thing to be careful of is if you copy/paste from the web, the quotes on the “false” will be curly directional style rather than the straight kind that are required for the config file.</p>
<p>One other setting that I changed was in the main preferences for VMWare under the Memory tab, I set the “How should the system allocate memory for virtual machines?’ to “Fit all virtual machine memory into reserved host RAM”.&#160; I am able to do this since I have 16GB of RAM on my laptop, not sure if this is quite as feasible with less RAM.</p>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/03/10/fix-for-excessive-vmware-disk-activity-on-host-after-suspend-or-shutdown/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft BI Image X: SQL 2012 RC0 Available for Download</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/02/17/microsoft-bi-image-x-sql-2012-rc0-available-for-download/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/02/17/microsoft-bi-image-x-sql-2012-rc0-available-for-download/#comments</comments>
		<pubDate>Fri, 17 Feb 2012 17:19:45 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[BI]]></category>
		<category><![CDATA[SQL Server 2012]]></category>
		<category><![CDATA[Virtual Machines]]></category>

		<guid isPermaLink="false">http://3.58</guid>
		<description><![CDATA[Periodically Microsoft refreshes their BI Demo virtual image that contains a fully configured instance of their latest BI tools with demo data.&#160; Last week they made the latest version available for download.&#160; They are calling it BI Image X and it contains SQL 2012 RC0 and it is available here.&#160; This one contains the new [...]]]></description>
			<content:encoded><![CDATA[<p align="left">Periodically Microsoft refreshes their BI Demo virtual image that contains a fully configured instance of their latest BI tools with demo data.&#160; Last week they made the latest version available for download.&#160; They are calling it BI Image X and it contains SQL 2012 RC0 and it is <a href="http://www.microsoft.com/download/en/details.aspx?id=28802" target="_blank">available here</a>.&#160; This one contains the new PowerView tool, as well as SharePoint and PowerPivot.&#160; You will need a minimum of 8GB of RAM allocated to the VM.</p>
<p align="left">Here’s the official description:</p>
<blockquote><p align="left">The Base ImageX Server is a virtual machine that can be hosted in Hyper-V that allows a user to test out the latest Business Intelligence features of SQL Server 2012 – RC0. The virtual machine has been configured to support the use of PowerView reports, PowerPivot Excel documents and various content packs allowing the user to explore the capabilities of SQL Server 2012. Working with the demos that can be installed on the ImageX server the user will have a clear picture of how the SQL Server 2012, Office and SharePoint tools support and enhance the self-service business intelligence environment. </p>
</blockquote>
<p align="left">**If you need to convert to VMWare to run on your dev machine (How come Windows 7 <em>still</em>&#160; doesn’t support 64-bit VMs?), you can use <a href="http://www.vmware.com/products/converter/features.html" target="_blank">VMWare vCenter Convert</a> to convert the virtual hard disk to VMware.</p>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/02/17/microsoft-bi-image-x-sql-2012-rc0-available-for-download/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Integration Services EzAPI Updated to Support SQL 2012</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/02/15/integration-services-ezapi-updated-to-support-sql-2012/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/02/15/integration-services-ezapi-updated-to-support-sql-2012/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 21:25:06 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Integration Services]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[EzAPI]]></category>
		<category><![CDATA[SSIS]]></category>

		<guid isPermaLink="false">http://3.56</guid>
		<description><![CDATA[Just got word from Matt Masson on the SSIS development team that EzAPI has been updated to support SQL 2012.&#160; This is greate news!&#160; I have been using EzAPI for the last couple of months and I am very satisfied with it as an API for SSIS that allows me to focus on solving the [...]]]></description>
			<content:encoded><![CDATA[<p>Just got word from Matt Masson on the SSIS development team that EzAPI has been updated to support SQL 2012.&#160; This is greate news!&#160; I have been using EzAPI for the last couple of months and I am very satisfied with it as an API for SSIS that allows me to focus on solving the problems I need to solve rather than getting hung up on the nuances of the SSIS COM objects and and wrappers.&#160; If I need access to something that is not supported by EzAPI (Package Configurations, for example), I can just cast as a Package object and use the standard API and convert back to EzPackage when I finish.</p>
<p><a href="http://sqlsrvintegrationsrv.codeplex.com/releases/view/82369" target="_blank">Get the bits here</a> (note, looks like you will need to compile the DLL yourself).&#160; For now, click the link to download Change Set 86517.</p>
<p><em>**UPDATE**</em></p>
<p>Matt Masson <a href="http://blogs.msdn.com/b/mattm/archive/2012/02/15/ezapi-updated-for-sql-server-2012.aspx" target="_blank">posted the change list</a> to the SSIS Team Blog:</p>
<p><strong>Changes</strong></p>
<ul>
<li>Task and Component IDs updated for SQL 2012
<ul>
<li>For 2005/2008 support, please use a previous version of the code </li>
</ul>
</li>
<li>Project upgraded to .NET 4 </li>
<li>EzProject – SSIS 2012 Project object model support </li>
<li>Project Connection Manager support </li>
<li>EzScript – Script Task support </li>
<li>EzSrcDestMultiStreamPackage – new package template </li>
<li>EzLookup – new TreatDuplicateKeysAsError property </li>
<li>EzFileSystemTask – fixed multiple properties </li>
<li>EzActiveXScript – Removed as it is no longer supported in SQL 2012 </li>
</ul>
<p>Also, it looks like this release <em>only</em> works against 2012.&#160; If you need SQL 2008, you will need the older version.</p>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/02/15/integration-services-ezapi-updated-to-support-sql-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Index of all SQL Server build numbers since 7.0 Beta</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/02/15/index-of-all-sql-server-build-numbers-since-7-0-beta/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/02/15/index-of-all-sql-server-build-numbers-since-7-0-beta/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 19:57:51 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://3.55</guid>
		<description><![CDATA[Stumbled across a nice SQL Server build number site a while back that has a comprehensive (I think?) list of every SQL Server build from the SQL 7 beta 3 up through SQL 2012 RC1 including every CU and hotfix along the way.&#160; There is also a link to download the KB that corresponds to [...]]]></description>
			<content:encoded><![CDATA[<p align="left">Stumbled across <a href="http://sqlserverbuilds.blogspot.com/" target="_blank">a nice SQL Server build number site</a> a while back that has a comprehensive (I think?) list of every SQL Server build from the SQL 7 beta 3 up through SQL 2012 RC1 including every CU and hotfix along the way.&#160; There is also a link to download the KB that corresponds to each build if appropriate.&#160; If you happen to know of a build that isn’t listed, it looks like this site is somewhat crowd-sourced, so post the details in the comments and it will likely make it up to the main page.</p>
<p align="left">(I<em>f you look in the comments, you can even find little “anonymous” nuggets, such as the following: “SQL2012 RTM is 11.0.2100.19”)</em></p>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/02/15/index-of-all-sql-server-build-numbers-since-7-0-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>101 LINQ Samples Published by Microsoft</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/02/14/101-linq-samples-published-by-microsoft/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/02/14/101-linq-samples-published-by-microsoft/#comments</comments>
		<pubDate>Tue, 14 Feb 2012 18:42:28 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[LINQ]]></category>

		<guid isPermaLink="false">http://3.54</guid>
		<description><![CDATA[While trying to work through various problems in LINQ that I could easily solve in T-SQL, I found a sample at code.msdn.microsoft.com (I hadn’t seen that sight before, but seems like a potential gold mine).&#160; It is called 101 LINQ Samples and at the time of this writing is the 3rd most popular download on [...]]]></description>
			<content:encoded><![CDATA[<p>While trying to work through various problems in LINQ that I could easily solve in T-SQL, I found a sample at code.msdn.microsoft.com (I hadn’t seen that sight before, but seems like a potential gold mine).&#160; It is called 101 LINQ Samples and at the time of this writing is the 3rd most popular download on the site.&#160; Looking forward to digging into it.&#160; <a href="http://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b" target="_blank">Here’s the link</a> to the main page with downloads.</p>
<p>Here are the individual links/list of topics:</p>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Restriction-Operators-b15d29ca">Restriction Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Restriction-Operators-b15d29ca/description#WhereSimple1">Where &#8211; Simple 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Restriction-Operators-b15d29ca/description#WhereSimple2">Where &#8211; Simple 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Restriction-Operators-b15d29ca/description#WhereSimple3">Where &#8211; Simple 3</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Restriction-Operators-b15d29ca/description#WhereDrilldown">Where &#8211; Drilldown</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Restriction-Operators-b15d29ca/description#WhereIndexed">Where &#8211; Indexed</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825">Projection Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectSimple1">Select &#8211; Simple 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectSimple2">Select &#8211; Simple 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectTransformation">Select &#8211; Transformation</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectAnonymousTypes1">Select &#8211; Anonymous Types 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectAnonymousTypes2">Select &#8211; Anonymous Types 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectAnonymousTypes3">Select &#8211; Anonymous Types 3</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectIndexed">Select &#8211; Indexed</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectFiltered">Select &#8211; Filtered</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectManyCompoundfrom1">SelectMany &#8211; Compound from 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectManyCompoundfrom2">SelectMany &#8211; Compound from 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectManyCompoundfrom3">SelectMany &#8211; Compound from 3</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectManyfromAssignment">SelectMany &#8211; from Assignment</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectManyMultiplefrom">SelectMany &#8211; Multiple from</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-09787825/description#SelectManyIndexed">SelectMany &#8211; Indexed</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc">Partitioning Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#TakeSimple">Take &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#TakeNested">Take &#8211; Nested</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#SkipSimple">Skip &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#SkipNested">Skip &#8211; Nested</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#TakeWhileSimple">TakeWhile &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#TakeWhileIndexed">TakeWhile &#8211; Indexed</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#SkipWhileSimple">SkipWhile &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Partitioning-Operators-c68aaccc/description#SkipWhileIndexed">SkipWhile &#8211; Indexed</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e">Ordering Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#OrderBySimple1">OrderBy &#8211; Simple 1</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#OrderBySimple2">OrderBy &#8211; Simple 2</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#OrderBySimple3">OrderBy &#8211; Simple 3</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#OrderBycomparer">OrderBy &#8211; Comparer</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#OrderByDescendingSimple1">OrderByDescending &#8211; Simple 1</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#OrderByDescendingSimple2">OrderByDescending &#8211; Simple 2</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#OrderByDescendingComparer">OrderByDescending &#8211; Comparer</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#thenBySimple">ThenBy &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#thenByComparer">ThenBy &#8211; Comparer</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#thenByDescendingSimple">ThenByDescending &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#ThenByDescendingComparer">ThenByDescending &#8211; Comparer</a></li>
<li><a href="http://code.msdn.microsoft.com/SQL-Ordering-Operators-050af19e/description#reverse">Reverse</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Grouping-c62703ea">Grouping Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Grouping-c62703ea/description#Simple1">GroupBy &#8211; Simple 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Grouping-c62703ea/description#Simple2">GroupBy &#8211; Simple 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Grouping-c62703ea/description#Simple3">GroupBy &#8211; Simple 3</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Grouping-c62703ea/description#Nested">GroupBy &#8211; Nested</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Grouping-c62703ea/description#Comparer">GroupBy &#8211; Comparer</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Grouping-c62703ea/description#ComparerMapped">GroupBy &#8211; Comparer, Mapped</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe">Set Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#distinct1">Distinct &#8211; 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#distinct2">Distinct &#8211; 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#union1">Union &#8211; 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#union2">Union &#8211; 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#intersect1">Intersect &#8211; 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#intersect2">Intersect &#8211; 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#except1">Except &#8211; 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Set-Operators-374f34fe/description#except2">Except &#8211; 2</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Conversion-Operators-e4e59714">Conversion Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Conversion-Operators-e4e59714/description#ToArray">ToArray</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Conversion-Operators-e4e59714/description#ToList">ToList</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Conversion-Operators-e4e59714/description#ToDictionary">ToDictionary</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Conversion-Operators-e4e59714/description#OfType">OfType</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Element-Operators-0f3f12ce">Element Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Element-Operators-0f3f12ce/description#FirstSimple">First &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Element-Operators-0f3f12ce/description#FirstCondition">First &#8211; Condition</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Element-Operators-0f3f12ce/description#FirstOrDefaultSimple">FirstOrDefault &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Element-Operators-0f3f12ce/description#FirstOrDefaultCondition">FirstOrDefault &#8211; Condition</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Element-Operators-0f3f12ce/description#ElementAt">ElementAt</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Generation-Operators-8a3fbff7">Generation Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Generation-Operators-8a3fbff7/description#Range">Range</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Generation-Operators-8a3fbff7/description#Repeat">Repeat</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Quantifiers-f00e7e3e">Quantifiers</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Quantifiers-f00e7e3e/description#AnySimple">Any &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Quantifiers-f00e7e3e/description#AnyGrouped">Any &#8211; Grouped</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Quantifiers-f00e7e3e/description#AllSimple">All &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Quantifiers-f00e7e3e/description#AllGrouped">All &#8211; Grouped</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869">Aggregate Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#CountSimple">Count &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#CountConditional">Count &#8211; Conditional</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#CountNested">Count &#8211; Nested</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#CountGrouped">Count &#8211; Grouped</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#SumSimple">Sum &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#SumProjection">Sum &#8211; Projection</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#SumGrouped">Sum &#8211; Grouped</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MinSimple">Min &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MinProjection">Min &#8211; Projection</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MinGrouped">Min &#8211; Grouped</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MinElements">Min &#8211; Elements</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MaxSimple">Max &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MaxProjection">Max &#8211; Projection</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MaxGrouped">Max &#8211; Grouped</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#MaxElements">Max &#8211; Elements</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#AverageSimple">Average &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#AverageProjection">Average &#8211; Projection</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#AverageGrouped">Average &#8211; Grouped</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#AggregateSimple">Aggregate &#8211; Simple</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Aggregate-Operators-c51b3869/description#AggregateSeed">Aggregate &#8211; Seed</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Miscellaneous-6b72bb2a">Miscellaneous Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Miscellaneous-6b72bb2a/description#Concat1">Concat &#8211; 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Miscellaneous-6b72bb2a/description#Concat2">Concat &#8211; 2</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Miscellaneous-6b72bb2a/description#EqualAll1">EqualAll &#8211; 1</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Miscellaneous-6b72bb2a/description#EqualAll2">EqualAll &#8211; 2</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Custom-41738490">Custom Sequence Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-to-DataSets-Custom-41738490/description#Combine">Combine</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Query-Execution-ce0d3b95">Query Execution</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Query-Execution-ce0d3b95/description#DeferredExecution">Deferred Execution</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Query-Execution-ce0d3b95/description#ImmediateExecution">Immediate Execution</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Query-Execution-ce0d3b95/description#QueryReuse">Query Reuse</a></li>
</ul>
<h4><a href="http://code.msdn.microsoft.com/LINQ-Join-Operators-dabef4e9">Join Operators</a></h4>
<ul>
<li><a href="http://code.msdn.microsoft.com/LINQ-Join-Operators-dabef4e9/description#crossjoin">Cross Join</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Join-Operators-dabef4e9/description#groupjoin">Group Join</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Join-Operators-dabef4e9/description#crossgroup">Cross Join with Group Join</a></li>
<li><a href="http://code.msdn.microsoft.com/LINQ-Join-Operators-dabef4e9/description#leftouterjoin">Left Outer Join</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/02/14/101-linq-samples-published-by-microsoft/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lync 2010 Web Presentations and Video Scaling</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/02/10/lync-2010-web-presentations-and-video-scaling/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/02/10/lync-2010-web-presentations-and-video-scaling/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 16:42:10 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Office 365]]></category>

		<guid isPermaLink="false">http://3.53</guid>
		<description><![CDATA[One of the biggest frustrations with Microsoft Live Meeting 2005/2007 is that there is no scaling built in to the screen share capabilities.&#160; If the presenter is running 1920&#215;1080 and clients are running 1280&#215;720 the presenter is not notified, but the viewers will not see the entire screen and instead have to scroll. We are [...]]]></description>
			<content:encoded><![CDATA[<p align="left">One of the biggest frustrations with Microsoft Live Meeting 2005/2007 is that there is no scaling built in to the screen share capabilities.&#160; If the presenter is running 1920&#215;1080 and clients are running 1280&#215;720 the presenter is not notified, but the viewers will not see the entire screen and instead have to scroll.</p>
<p align="left"><a href="http://key2consulting.com/Blogs/jrobinson/files/2012/02/image3.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="right" src="http://key2consulting.com/Blogs/jrobinson/files/2012/02/image_thumb3.png" width="244" height="177" /></a></p>
<p align="left">We are in the process of transitioning to Office 365, and one of the first features of Lync 2010 that I wanted to confirm was that Lync supported client screen scaling.&#160; I am happy to report that it does, and it works perfectly!&#160; To the right is a screenshot of a meeting shrunken as far as possible.&#160; Some other very cool screen sharing features are available as well, including sharing (and scaling) multiple screens.&#160; I have 3 screens in my development environment and I can choose to show any screen, any application running on a screen, or all 3 screens (2 are 1080p and 1 is 1600&#215;1200 and it was not a problem).&#160; You also can pull up a video thumbnail of what the clients are seeing, or even share a PowerPoint deck natively (not just sharing the PowerPoint app, but the .pptx file itself).&#160; Lync 2010 is a great step forward over Live Meeting.</p>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/02/10/lync-2010-web-presentations-and-video-scaling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Better Starting Point for .Net Console Applications</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/02/09/a-better-starting-point-for-net-console-applications/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/02/09/a-better-starting-point-for-net-console-applications/#comments</comments>
		<pubDate>Thu, 09 Feb 2012 21:41:49 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Console Applications]]></category>

		<guid isPermaLink="false">http://3.50</guid>
		<description><![CDATA[Often when prototyping .Net applications, I end up starting with a console app (as things get more complicated or require interactivity, I move to Windows forms).&#160; It takes about 1 minute to get up and running with a console app. . . unless you want to start passing fancy parameters and things like that.&#160; It [...]]]></description>
			<content:encoded><![CDATA[<p align="left">Often when prototyping .Net applications, I end up starting with a console app (as things get more complicated or require interactivity, I move to Windows forms).&#160; It takes about 1 minute to get up and running with a console app. . . unless you want to start passing fancy parameters and things like that.&#160; It doesn’t take much more effort, but the point is that you don’t want to re-invent the console app code, you want to spend your time prototyping.</p>
<p align="left">Sometimes your production application might require a console app.&#160; In my case, one portion of the application I am working on will need to be implemented as a console app (for now) so that it can be executed from a SQL Server Agent job.&#160; I want the console app to be robust and production-ready, very different from the prototype apps I cobble together in the span of a couple of minutes.</p>
<p align="left"><a href="http://key2consulting.com/Blogs/jrobinson/files/2012/02/image2.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="right" src="http://key2consulting.com/Blogs/jrobinson/files/2012/02/image_thumb2.png" width="244" height="124" /></a></p>
<p align="left">In support of a more robust console application, I found a blog post with a great template put together by Alois Kraus.&#160; There is a <a href="http://geekswithblogs.net/akraus1/archive/2010/11/11/142685.aspx" target="_blank">blog post covering the basics</a>, and the template can be <a href="http://visualstudiogallery.msdn.microsoft.com/51606523-019b-40d6-989a-88465dd6a6aa/?SRC=Home" target="_blank">downloaded</a> from the Visual Studio Gallery.</p>
<p align="left">At a high level, the custom console template starts you off in a Cadillac instead of a bicycle when building a console application.&#160; Right out of the gate you get a nice command line parser, help output, color console and much more robust error handling.&#160; I doubt I will start with the basic console template again.</p>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/02/09/a-better-starting-point-for-net-console-applications/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using an Entity Framework Data Model in Multiple Projects</title>
		<link>http://key2consulting.com/Blogs/jrobinson/2012/02/08/using-an-entity-framework-data-model-in-multiple-projects/</link>
		<comments>http://key2consulting.com/Blogs/jrobinson/2012/02/08/using-an-entity-framework-data-model-in-multiple-projects/#comments</comments>
		<pubDate>Wed, 08 Feb 2012 16:29:54 +0000</pubDate>
		<dc:creator>Josh Robinson</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Entity Framework]]></category>

		<guid isPermaLink="false">http://3.47</guid>
		<description><![CDATA[I’m starting to dig into Entity Framework 4 as part of a project that I am working on.&#160; It is great, much easier than the old school data access methods in terms of getting up and running (it takes about 3 minutes).&#160; There are a lot of articles out there, but I have still had [...]]]></description>
			<content:encoded><![CDATA[<p align="left">I’m starting to dig into Entity Framework 4 as part of a project that I am working on.&#160; It is great, much easier than the old school data access methods in terms of getting up and running (it takes about 3 minutes).&#160; There are a lot of articles out there, but I have still had to figure out a few less-obvious things along the way.</p>
<p align="left">As part of getting my app ready for production, I am moving the data access layer to its own project.&#160; I started out by creating a new project in my solution and then within that project I created a new entity data model.&#160; After that, I just added the entity model project as a reference on my sample app project.&#160; I was missing some references, so figured out I needed to add the following using statements:</p>
<pre style="width: 448px; height: 84px" class="code"><span style="color: blue">using </span>System.Data.Objects;
<span style="color: blue">using </span>System.Data.Objects.DataClasses;</pre>
<p align="left">After this I was a lot closer, able to compile the app but no data was being returned.&#160; After a bit of searching, <a href="http://www.dotnetcurry.com/ShowArticle.aspx?ID=617" target="_blank">this article</a> helped me a ton.&#160; The only other thing I was missing was the connection string, which I didn’t even know existed partly due to the fact that Entity Framework is so easy to get up and running via the wizard, which hides this from you.&#160; After I copied the connection string directly from Entity Model project, I just pasted it into the &lt;configuration&gt; section of the App.Config of my sample app and it worked perfectly right away.</p>
<pre style="width: 605px; height: 102px" class="code">  <span style="color: blue">&lt;</span><span style="color: #a31515">connectionStrings</span><span style="color: blue">&gt;
    &lt;</span><span style="color: #a31515">add </span><span style="color: red">name</span><span style="color: blue">=</span>&quot;<span style="color: blue">MyEntities</span>&quot; <span style="color: red">connectionString</span><span style="color: blue">=</span>&quot;<span style="color: blue">metadata=res://*/MyModel.csdl|res://*/MyModel.ssdl|res://*/MyModel.msl;provider=System.Data.SqlClient;provider connection string=</span><span style="color: red">&amp;quot;</span><span style="color: blue">data source=(local);initial catalog=MyDB;integrated security=True;multipleactiveresultsets=True;App=EntityFramework</span><span style="color: red">&amp;quot;</span>&quot; <span style="color: red">providerName</span><span style="color: blue">=</span>&quot;<span style="color: blue">System.Data.EntityClient</span>&quot; <span style="color: blue">/&gt;
  &lt;/</span><span style="color: #a31515">connectionStrings</span><span style="color: blue">&gt;
</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://key2consulting.com/Blogs/jrobinson/2012/02/08/using-an-entity-framework-data-model-in-multiple-projects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

