<?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>David Mellors &#187; Software Development</title>
	<atom:link href="http://www.wahooga.com/category/software-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.wahooga.com</link>
	<description>Personal Blog</description>
	<lastBuildDate>Mon, 01 Aug 2011 09:55:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>The type or namespace name ‘LayoutsPageBase’ does not exist in the namespace ‘Microsoft.SharePoint.WebControls’ (are you missing an assembly reference?)</title>
		<link>http://www.wahooga.com/2011/02/09/the-type-or-namespace-name-%e2%80%98layoutspagebase%e2%80%99-does-not-exist-in-the-namespace-%e2%80%98microsoft-sharepoint-webcontrols%e2%80%99-are-you-missing-an-assembly-reference/</link>
		<comments>http://www.wahooga.com/2011/02/09/the-type-or-namespace-name-%e2%80%98layoutspagebase%e2%80%99-does-not-exist-in-the-namespace-%e2%80%98microsoft-sharepoint-webcontrols%e2%80%99-are-you-missing-an-assembly-reference/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 09:27:23 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>

		<guid isPermaLink="false">http://www.wahooga.com/?p=402</guid>
		<description><![CDATA[After creating an empty SharePoint 2010 solution in Visual Studio 2010 I added an Application Page to the project but compiling failed and gave me the following error: The type or namespace name ‘LayoutsPageBase’ does not exist in the namespace ‘Microsoft.SharePoint.WebControls’ (are you missing an assembly reference?) Using the object browser in Visual Studio I [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_403" class="wp-caption alignright" style="width: 160px"><a href="http://www.wahooga.com/wp-content/uploads/2011/02/Image1.png"><img class="size-thumbnail wp-image-403" title="Image1" src="http://www.wahooga.com/wp-content/uploads/2011/02/Image1-150x150.png" alt="" width="150" height="150" /></a><p class="wp-caption-text">Image 1</p></div>
<p>After creating an empty SharePoint 2010 solution in Visual Studio 2010 I added an Application Page to the project but compiling failed and gave me the following error:</p>
<p>The type or namespace name ‘LayoutsPageBase’ does not exist in the namespace ‘Microsoft.SharePoint.WebControls’ (are you missing an assembly reference?)</p>
<div id="attachment_404" class="wp-caption alignleft" style="width: 160px"><a href="http://www.wahooga.com/wp-content/uploads/2011/02/image2.png"><img class="size-thumbnail wp-image-404 " title="image2" src="http://www.wahooga.com/wp-content/uploads/2011/02/image2-150x150.png" alt="" width="150" height="150" /></a><p class="wp-caption-text">Image 2</p></div>
<p>Using the object browser in Visual Studio I could see that the namespace Microsoft.SharePoint.WebControls didn’t contain LayoutsPageBase (<a href="http://www.wahooga.com/wp-content/uploads/2011/02/Image1.png">Image 1</a>) but when I viewed the same Microsoft.SharePoint.dll outside of Visual Studio (in <a title="Red Gate Reflector" href="http://www.red-gate.com/products/dotnet-development/reflector/">Red Gate Reflector</a>) I could see (<a href="http://www.wahooga.com/wp-content/uploads/2011/02/image2.png">Image 2</a>).</p>
<p>The reason for this was quite simple when I created the SharePoint Project I had chosen to deploy it as a Sandbox Solution and application pages are not supported in sandboxed solutions. Selecting the project properties and changing the Sandboxed Solution property to False and it compiled successfully.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2011/02/09/the-type-or-namespace-name-%e2%80%98layoutspagebase%e2%80%99-does-not-exist-in-the-namespace-%e2%80%98microsoft-sharepoint-webcontrols%e2%80%99-are-you-missing-an-assembly-reference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SharePoint Designer 2010 loses my changes when using Customize XSLT</title>
		<link>http://www.wahooga.com/2010/11/02/sharepoint-designer-2010-loses-my-changes-when-using-customize-xslt/</link>
		<comments>http://www.wahooga.com/2010/11/02/sharepoint-designer-2010-loses-my-changes-when-using-customize-xslt/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 16:46:25 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[SharePoint 2010]]></category>

		<guid isPermaLink="false">http://www.wahooga.com/?p=377</guid>
		<description><![CDATA[Having created a view in SharePoint 2010 I now wanted to modify the way the groupings were displayed. Opening the view in SharePoint 2010 I could see a ribbon option labeled Customize XSLT which enabled me to edit the way that the view was displayed by editing the XSL and in SharePoint Designer 2010 everything [...]]]></description>
			<content:encoded><![CDATA[<p><img class="right alignright" src="http://www.wahooga.com/images/customize-xslt-sharepoint-2010.png" alt="" width="513" height="145" />Having created a view in SharePoint 2010 I now wanted to modify the way the groupings were displayed.</p>
<p>Opening the view in SharePoint 2010 I could see a ribbon option labeled Customize XSLT which enabled me to edit the way that the view was displayed by editing the XSL and in SharePoint Designer 2010 everything looked fine but the original version of the view always displayed in the web browser.</p>
<p>Eventually I remembered coming across the ddwrt:ghost attribute and changing it from ddwrt:ghost=&#8221;show&#8221; to ddwrt:ghost=&#8221;" resolved the issue.</p>
<p>Hopefully the Combined Knowledge Developer training I am doing in December will help reduce the amount of time I spend on these SharePoint oddities.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2010/11/02/sharepoint-designer-2010-loses-my-changes-when-using-customize-xslt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debugging mode in SharePoint 2010 &#8211; set customerrors mode to off in web.config</title>
		<link>http://www.wahooga.com/2010/11/01/debugging-mode-in-sharepoint-2010-set-customerrors-mode-to-off-in-web-config/</link>
		<comments>http://www.wahooga.com/2010/11/01/debugging-mode-in-sharepoint-2010-set-customerrors-mode-to-off-in-web-config/#comments</comments>
		<pubDate>Mon, 01 Nov 2010 14:31:34 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Fixes to problems]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>

		<guid isPermaLink="false">http://www.wahooga.com/?p=375</guid>
		<description><![CDATA[Whilst trying to debug a Feature Receiver in Visual Studio 2010 I kept receiving the standard application error suggesting that if I wanted to view the details of the error that I set the customErrors to Off. That&#8217;s odd I thought I had already done that and a visit to the web.config in c:\inetpub\wwwroot\wss\VirtualDirectories\80 showed [...]]]></description>
			<content:encoded><![CDATA[<p>Whilst trying to debug a Feature Receiver in Visual Studio 2010 I kept receiving the standard application error suggesting that if I wanted to view the details of the error that I set the customErrors to Off.</p>
<p>That&#8217;s odd I thought I had already done that and a visit to the web.config in c:\inetpub\wwwroot\wss\VirtualDirectories\80 showed that this was the case.</p>
<p>A can of coke and a cup of coffee later I worked out that there is also a web.config in c:\program files\common files\microsft shared\web server extensions\14\TEMPLATE\LAYOUTS and a quick change to that web.config and the error details were now displaying.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2010/11/01/debugging-mode-in-sharepoint-2010-set-customerrors-mode-to-off-in-web-config/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The form has been closed / The specified form cannot be found &#8211; SharePoint 2007</title>
		<link>http://www.wahooga.com/2010/03/30/the-form-has-been-closed-the-specified-form-cannot-be-found-sharepoint-2007/</link>
		<comments>http://www.wahooga.com/2010/03/30/the-form-has-been-closed-the-specified-form-cannot-be-found-sharepoint-2007/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 15:13:09 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Fixes to problems]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[infopath 2007]]></category>
		<category><![CDATA[sharepoint 2007]]></category>
		<category><![CDATA[visual studio 2008]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">http://www.wahooga.com/?p=324</guid>
		<description><![CDATA[Having created my InfoPath 2007 Form, created my workflow in Visual Studio 2008 and clicked Deploy I found that my workflow went to In Progress but the Instantiation Form never displayed in SharePoint and all I got was a message &#8220;The form has been closed&#8221; on the screen. Looking in the log files I could [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.wahooga.com/wp-content/uploads/2010/03/infopath-urn.png"><img class="alignright size-medium wp-image-325" title="Published InfoPath URN" src="http://www.wahooga.com/wp-content/uploads/2010/03/infopath-urn-244x300.png" alt="" width="244" height="300" /></a><br />
Having created my InfoPath 2007 Form, created my workflow in Visual Studio 2008 and clicked Deploy I found that my workflow went to In Progress but the Instantiation Form never displayed in SharePoint and all I got was a message &#8220;The form has been closed&#8221; on the screen. Looking in the log files I could see an error</p>
<blockquote><p><em>Exception occurred during request processing. (User: MOSSDEV86\Administrator, Form Name: , IP: , Request: </em><em> Form ID: , Type: InfoPathLocalizedException, Exception Message: The specified form cannot be found.)</em></p></blockquote>
<p>Looking in Central Administration &gt; Application Management &gt; Manage Form Templates I could see my workflow, status ready and workflow enabled but I still kept getting &#8220;The form has been closed&#8221;. After a reasonable amount swearing and pulling out of hair I realised that the Form ID specified in Manage Form Templates was different to the one I used in my workflow.xml file. HOW?????</p>
<p>Well, I was saving my InfoPath form and look at the properties to get the URN and then publishing the file to get deployed with my code. What I hadn&#8217;t realised was that when you publish the form you then get a different URN!</p>
<p>REMEMBER: Use the URN from the published form and not from the saved one!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2010/03/30/the-form-has-been-closed-the-specified-form-cannot-be-found-sharepoint-2007/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The importance of a good installer</title>
		<link>http://www.wahooga.com/2008/12/08/the-importance-of-a-good-installer/</link>
		<comments>http://www.wahooga.com/2008/12/08/the-importance-of-a-good-installer/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 09:59:42 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Add new tag]]></category>
		<category><![CDATA[Opinion]]></category>

		<guid isPermaLink="false">http://www.wahooga.com/?p=230</guid>
		<description><![CDATA[Years ago I used to get all the computer magazines and install all the applications on the cover disk but I no longer buy computer magazines and instead spend half my life installing applications found on the Internet and then the rest of my life is divided between trying to get the applications to work [...]]]></description>
			<content:encoded><![CDATA[<p>Years ago I used to get all the computer magazines and install all the applications on the cover disk but I no longer buy computer magazines and instead spend half my life installing applications found on the Internet and then the rest of my life is divided between trying to get the applications to work or uninstalling them!</p>
<div id="attachment_234" class="wp-caption alignright" style="width: 310px"><a href="http://wahooga.com.dnpserver.com/wp-content/uploads/2008/12/installer11.png"><img class="size-medium wp-image-234" title="Installing" src="http://www.wahooga.com/wp-content/uploads/2008/12/installer1-300x234.png" alt="Is this a good installer?" width="300" height="234" /></a><p class="wp-caption-text">Is this a good installer?</p></div>
<p>OK, maybe I am exaggerating a little but it is interesting to note how the installer effects my opinion not only of the software but also of the software company. The ease of using an installer will also significantly effect some but not all of my purchasing decisions. The effect of an installer varies depending on the size of the problem the software is required for. If for example it&#8217;s a matter of convenience then battling with an installer just isn&#8217;t worth it and if the market is saturated with alternatives to your product then your duff instaler will only encourage me to try one of your competitors products. On the other hand if I am evaluating &#8220;enterprise&#8221; solutions then I might fight with the installer for longer as the potential benefits of using the software will hopefully outweigh the time spent installing.</p>
<p>I can&#8217;t understand why someone goes to all the trouble of writing good software but makes it so hard to try it to see if it meets my needs. Some of the common problems I find with installers are:-<br />
<span id="more-230"></span></p>
<ul>
<li>You are given three options Typical, Complete and Custom but they all do the same thing!</li>
<li>I can&#8217;t specify the path to install to (if everything wants to go on my C: drive then obviously it&#8217;s going to run out of space!)</li>
<li>100% should mean that the installer has finished not that I&#8217;ve still got half hour to wait for you to finish the rest of the installation.</li>
<li>0% surely means you haven&#8217;t started installing. Spending 10 minutes at 0% makes me think your doing nothing and you wouldn&#8217;t do that to me would you?</li>
<li>If you don&#8217;t know how long it&#8217;s going to take don&#8217;t tell me it&#8217;s going to take 3 hours and then finish in 5 minutes and conversely don&#8217;t tell me there is only 3 minutes left and half an hour later adjust it to 2.</li>
<li>If I can&#8217;t install two different versions of your application on my PC at the same time then tell me and ask if I would like to uninstall the previous version don&#8217;t just tell me &#8220;a previous verson already exists&#8221;</li>
<li>If I can&#8217;t have two different versions of your software on my PC don&#8217;t just let me do it &#8211; tell me first that it&#8217;s a bad idea and let me take the choice. I don&#8217;t want to spend spend two hours trying to work out with your support department why it&#8217;s not working only to be told I should not have done it!</li>
<li>Why should I read the README.TXT first or the manual to install the software. The installer should tell me everything I need to know!</li>
<li>If I need to uninstall your software then please give me two options.
<ol>
<li>Uninstall everything. Yes, this means all files and all registry entries not just the ones you think I don&#8217;t need anymore.</li>
<li>Uninstall but retain configuration settings.</li>
</ol>
</li>
<li>Don&#8217;t ask me to type in the 128 character serial number and then tell me to remove the hyphens! If you know the hypens aren&#8217;t needed then tell me first or just remove them for me!</li>
</ul>
<p>I&#8217;m sure the list should be longer than this can you think of anymore points or examples?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2008/12/08/the-importance-of-a-good-installer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Example: Updating a remote customer database schema</title>
		<link>http://www.wahooga.com/2008/06/19/sql-comparison-sdk-updating-a-customer-database-schema-part-i/</link>
		<comments>http://www.wahooga.com/2008/06/19/sql-comparison-sdk-updating-a-customer-database-schema-part-i/#comments</comments>
		<pubDate>Thu, 19 Jun 2008 14:37:00 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[Red Gate Software]]></category>
		<category><![CDATA[SQL Comparison SDK]]></category>

		<guid isPermaLink="false">/archive/2008/06/19/sql-comparison-sdk-updating-a-customer-database-schema-part-i.aspx</guid>
		<description><![CDATA[Overview A common use of the Red Gate SQL Comparison SDK is to package up the latest version of a database schema and send it to customers as an executable. This example demonstrates how easy it is to use the SDK to do this. NOTE: SQL Comparison SDK is to be the new name for [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Overview</strong></p>
<p><img src="/images/sqlcomparisonsdk.gif" alt="" align="right" />A common use of the Red Gate SQL Comparison SDK is to package up the latest version of a database schema and send it to customers as an executable.</p>
<p>This example demonstrates how easy it is to use the SDK to do this.<br />
<span style="color: #888888;"><strong>NOTE:</strong> SQL Comparison SDK is to be the new name for SQL Toolkit</span></p>
<p><span id="more-171"></span></p>
<p><strong>Pre-requisites</strong></p>
<ul>
<li>Visual Studio 2005 or Visual Studio 2008</li>
<li><a href="http://www.red-gate.com/products/SQL_Toolkit">Red Gate SQL Comparison SDK</a><br />
You can download a <a href="http://www.red-gate.com/dynamic/downloads/downloadform.aspx?download=sqltoolkit">14 day free trial of SQL Comparison SDK</a> if you haven&#8217;t already got it.</li>
<li><a href="http://help.red-gate.com/help/SQLCompareAPIv6/0/en/Examples/SQLCompareTutorial.sql">WidgetProduction and WidgetStaging SQL creation script</a><br />
This database creation script is used by some of the SQL Compare API toolkit samples.</li>
<li><a href="/sqldbdeploy/sqldbdeploy.zip">SqlDbDeploy.zip</a><br />
The database schema deployment example used in this article.</li>
</ul>
<p><strong>Building the example</strong></p>
<p>When you load the solution in Visual Studio you will need to update the references to the toolkit assemblies.<img src="/images/updatereferences.gif" alt="" align="right" /> You can find the .dll files in the folder where you installed SQL Compare. The default location is Program Files\Red Gate\SQL Compare 6</p>
<p>If you want to change the splash image then you can replace the splash.jpg file in resources.</p>
<p>The embedded snapshot.snp file is used by default. A snapshot of the WidgetStaging database is included in the resources folder. You can delete it or replace it with your own snapshot but you need to remember to set the build action to Embedded Resource.</p>
<p style="font-weight: bold;">Using the example</p>
<p>The compiled example takes a number of command line parameters which are:-</p>
<p>/S:&lt;servername&gt;<br />
- This is the server on which the database resides to synchronize.<br />
/D:&lt;database&gt;<br />
- The database name to update.<br />
/B:&lt;filename&gt;<br />
- If you want to make a backup of the original schema before an update specify a filename here.<br />
/V:true<br />
- Specify this if you want verbose information.<br />
/UE:&lt;snapshotname&gt;<br />
- Name of embedded snapshot to use. If /UB not specified then default is snapshot.snp /UB:&lt;snapshotfilename&gt;<br />
- Name of snapshot file to use.</p>
<p>At the moment the example includes a snapshot for the WidgetProduction database so if you run the following parameters:-<br />
SqlDbDeploy.exe /S:davidm\sql2005 /D:widgetproduction /B:backup.snp</p>
<p>This would update the widgetproduction database on davidm\sql2005, create a backup snapshot before doing an updates and call the file backup.snp and provide verbose output.</p>
<p>If you want to reset the database back to the original you would use:-<br />
SqlDbDeploy.exe /S:davidm\sql2005 /D:widgetproduction /V:true /UB:backup.snp</p>
<p><strong>SqlDbDeploy &#8211; The movie<a href="/sqldbdeploy.htm"><img src="/images/screenshot.gif" border="0" alt="" align="right" /></a><br />
</strong>Just in case you haven&#8217;t installed the SDK yet you can view a flash movie of a <a href="/sqldbdeploy.htm">demonstration of SqlDbDeploy</a>.</p>
<p><strong>Thank You<br />
</strong>I would like to thank the Red Gate customers who provided information and source code which helped me to understand how they are using the SDK. In particular a big thank you to Rawden Hoff of <a href="http://www.nebulasystems.net/">Nebula Systems</a> whose VB.Net example inspired me to produce this example.</p>
<p><strong>Feedback &amp; disclaimer<br />
</strong>This example is provided &#8220;as is&#8221; and is not supported by Red Gate Software. This is my first .net Windows application so if you find this example useful or have any suggestions for improving it then it would be great to hear from you</p>
<p><strong>UPDATE FOR SQL Comparison SDK v7</strong></p>
<p>The solution available for download is for the SQL Toolkit v6 if you are using the SQL Comparison SDK v7 I believe you will need to make the following changes.</p>
<ul>
<li>Open the solution and remove the references to the Red Gate assemblies.</li>
<li>There have been some namespace changes so you will need to add the new assemblies from your V7 installation. The files are<br />
RedGate.Shared.Sql.dll, RedGate.Shared.Utils.dll and RedGate.SqlCompare.Engine.dll</li>
<li>Replace the RedGate using statements in Form1.cs with<br />
using RedGate.Shared.SQL;<br />
using RedGate.Shared.SQL.ExecutionBlock;<br />
using RedGate.Shared.Utils;<br />
using RedGate.SQLCompare.Engine;</li>
<li>Because of the namespace changes remove the references toRedGate.SQL.Shared from Form1.cs line 168 so it now looks like<br />
BlockExecutor executor = new BlockExecutor();</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2008/06/19/sql-comparison-sdk-updating-a-customer-database-schema-part-i/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQL Toolkit introduction</title>
		<link>http://www.wahooga.com/2008/06/05/sql-toolkit-introduction/</link>
		<comments>http://www.wahooga.com/2008/06/05/sql-toolkit-introduction/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 10:37:00 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[Red Gate Software]]></category>
		<category><![CDATA[SQL Comparison SDK]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">/archive/2008/06/05/sql-toolkit-introduction.aspx</guid>
		<description><![CDATA[In my last post I talked about writing an example application using the Red Gate SQL Toolkit but it occurred to me that I ought to mention a bit more about what SQL Toolkit is and what it can be used for. What is SQL Toolkit?&#160;SQL Toolkit is an software development kit (SDK)&#160;from Red Gate [...]]]></description>
			<content:encoded><![CDATA[<p>In my last post I talked about writing an example application using the Red Gate SQL Toolkit but it occurred to me that I ought to mention a bit more about what SQL Toolkit is and what it can be used for.</p>
<p><span id="more-169"></span></p>
<p><strong>What is SQL Toolkit?</strong>&nbsp;<br />SQL Toolkit is an software development kit (SDK)&nbsp;from Red Gate Software (my employers) that provides&nbsp;.net developers with an api, samples and documentation for doing schema and data comparisons of Microsoft SQL Server databases. The toolkit also has a an api for packaging databases and database updates.</p>
<p></p>
<p><strong>Why would I use SQL Toolkit?<br /></strong>Interestingly I believe that many of the&nbsp;solutions&nbsp;that customers are using SQL Toolkit for can already be done with the GUI or command line&nbsp;versions of&nbsp;SQL Compare, SQL Data Compare or SQL Packager products but software developers sometimes prefer to have the increased level of control that they gain by using the SDK.</p>
<p></p>
<p mce_keep="true">The customers I have had contact with seem to use the software for the following:-</p>
<p></p>
<ul></p>
<li>
<div mce_keep="true"><strong>Update the database schema at a customers site without user interation</strong><br />An executable is sent to the customer which they run and which compares a database snapshot with the customers database and then updates the customers database with the differences.</div>
</li>
<p></p>
<li>
<div mce_keep="true"><strong>Continuous Integration (automated testing)<br /></strong>Some customers had previously been using database backups for their testing but using the toolkit is significantly quicker and more effective.</div>
</li>
<p></p>
<li>
<div mce_keep="true"><strong>Keep internal databases in sync (often in different geographical locations)<br /></strong>The Microsoft SQL Server replication isn&#8217;t as friendly or as easy as some people would like and so customers are using SQL Toolkit to keep databases synchronized across different sites.</div>
</li>
<p></p>
<li>
<div mce_keep="true"><strong>Update SQL database for remote web hosts</strong><br />You develop on a local server and then you need to migrate your changes to your web servers which are hosted remotely. </div>
</li>
<p></p>
<li>
<div mce_keep="true"><strong>Change control and auditing<br /></strong>SQL Toolkit is being used as part of the change control process to record changes being made to production systems.</div>
</li>
</ul>
<p></p>
<p mce_keep="true">There are certainly more uses for SQL Toolkit then I have listed but if you want to do SQL database comparison and want a high level of control then you should take a look at it.</p>
<p></p>
<p mce_keep="true"><strong>Links:&nbsp;<br /></strong><a class="" href="http://www.red-gate.com/products/SQL_Toolkit/" mce_href="http://www.red-gate.com/products/SQL_Toolkit/">Red Gate SQL Toolkit product page</a><br /><a class="" href="http://www.red-gate.com/dynamic/downloads/downloadform.aspx?download=sqltoolkit" mce_href="http://www.red-gate.com/dynamic/downloads/downloadform.aspx?download=sqltoolkit">SQL Toolkit free 14 day trial</a></p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2008/06/05/sql-toolkit-introduction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Red Gate SQL Toolkit: SQL Deployment example</title>
		<link>http://www.wahooga.com/2008/06/04/red-gate-sql-toolkit-example-to-deploy-database-schema-to-customer-site/</link>
		<comments>http://www.wahooga.com/2008/06/04/red-gate-sql-toolkit-example-to-deploy-database-schema-to-customer-site/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 09:27:00 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[Red Gate Software]]></category>
		<category><![CDATA[SQL Comparison SDK]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">/archive/2008/06/04/red-gate-sql-toolkit-example-to-deploy-database-schema-to-customer-site.aspx</guid>
		<description><![CDATA[We are getting a lot of customers interested in using SQL Toolkit for deploying database updates to remote customer sites. Using SQL Toolkit you can distribute a single executable to your customers and use the Toolkit to do a schema comparison and then automatically update the customers database with the differences between a snapshot from [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="Red Gate SQL Toolkit" src="http://www.red-gate.com/images/boxshots/large/sqltoolkitnew.gif" align=right mce_src="http://www.red-gate.com/images/boxshots/large/sqltoolkitnew.gif">We are getting a lot of customers interested in using SQL Toolkit for deploying database updates to remote customer sites. Using SQL Toolkit you can distribute a single executable to your customers and use the Toolkit to do a schema comparison and then automatically update the customers database with the differences between a snapshot from your database and the customers database.</p>
<p><span id="more-168"></span></p>
<p>Up until now I haven&#8217;t used SQL Toolkit that much so I thought it would be nice to learn more about the product and come up with&nbsp;my own&nbsp;example of using SQL Toolkit to deploy/update a database. A recent survey and some helpful existing customers have given me an insight into what people want such an example to do so in the next few days I intend to post my first attempt and then make improvements to it over the coming weeks.</p>
<p></p>
<p mce_keep="true">The SQL Toolkit provides full api access to the Red Gate comparison tools giving you database schema, data and packaging functionality in your own applications. You can download a <a class="" href="http://www.red-gate.com/products/SQL_Toolkit/" mce_href="http://www.red-gate.com/products/SQL_Toolkit/">free 14 day trial of SQL Toolkit</a>.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2008/06/04/red-gate-sql-toolkit-example-to-deploy-database-schema-to-customer-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio development web server dynamic port numbering problem</title>
		<link>http://www.wahooga.com/2008/02/20/visual-studio-development-web-server-automatic-port-numbering-problem/</link>
		<comments>http://www.wahooga.com/2008/02/20/visual-studio-development-web-server-automatic-port-numbering-problem/#comments</comments>
		<pubDate>Wed, 20 Feb 2008 11:55:00 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">/archive/2008/02/20/visual-studio-development-web-server-automatic-port-numbering-problem.aspx</guid>
		<description><![CDATA[The problem&#160; I had this problem in Visual Studio 2005 and now I have it in Visual Web Developer 2008 express edition where when debugging a web application using the development web server the dynamic port number used by the server didn&#8217;t match what Visual Studio had used for the web browser. It was always [...]]]></description>
			<content:encoded><![CDATA[<p>
<p><span style="FONT-WEIGHT: bold">The problem</span>&nbsp;</p>
<p></p>
<p>I had this problem in Visual Studio 2005 and now I have it in Visual Web Developer 2008 express edition where when debugging a web application using the development web server the dynamic port number used by the server didn&#8217;t match what Visual Studio had used for the web browser. It was always wrong and normally out by two or three port numbers.</p>
<p></p>
<p>For example the cassini web development server starts and I can see in the notification area what port number it uses</p>
<p></p>
<p><img title="visual studio web server port" height=46 alt="visual studio web server port" src="http://www.wahooga.com/images/port%20number.gif" width=207 mce_src="/images/port%20number.gif"></p>
<p></p>
<p>However the web browser started by Visual studio looks like this</p>
<p></p>
<p><img src="http://www.wahooga.com/images/browser-port-number.gif" mce_src="/images/browser-port-number.gif"></p>
<p></p>
<p>Clearly that isn&#8217;t going to work. </p>
<p></p>
<p style="FONT-WEIGHT: bold">The Solution</p>
<p></p>
<p>I managed to track down the problem to my firewall software part of the ESET Smart Security Suite. Now, I am pretty sure that when I was using Visual Studio 2005 and had the problem that I was using either McAfee, Norton/Symantec or possibly even the Outpost firewall software. My solution won&#8217;t work if you aren&#8217;t using Eset but hopefully it will help you to look in the right area.</p>
<p><span id="more-163"></span></p>
<ol></p>
<li>If you are using ESET Smary Security Suite then I bet you are using the Protocol Filtering (you can tell by looking in the Advanced Firewall Setup).<br />You could just turn it off and ignore the rest of my blurb but you probably want to keep Protocol Filtering enabled so goto step 2.</li>
<p></p>
<li>In the Advanced setup you need to locate the section shown in the image below and uncheck the web development server.<br /><img src="http://www.wahooga.com/images/setup-dialog.gif" mce_src="/images/setup-dialog.gif"></li>
<p></p>
<li>Make sure you stop the web development server if it&#8217;s still running and then try debugging from Visual Studio again.</li>
</ol>
<p></p>
<p style="FONT-WEIGHT: bold">Feedback</p>
<p></p>
<p>Please let me know if this helps you or if you think the instructions can be improved. Equally if you using a different firewall and found the solution please let me know.</p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2008/02/20/visual-studio-development-web-server-automatic-port-numbering-problem/feed/</wfw:commentRss>
		<slash:comments>73</slash:comments>
		</item>
		<item>
		<title>Profiling with ANTS Profiler and MSTest</title>
		<link>http://www.wahooga.com/2007/05/02/profiling-with-ants-profiler-and-mstest/</link>
		<comments>http://www.wahooga.com/2007/05/02/profiling-with-ants-profiler-and-mstest/#comments</comments>
		<pubDate>Wed, 02 May 2007 16:34:00 +0000</pubDate>
		<dc:creator>Dave Mellors</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[ANTS Profiler]]></category>
		<category><![CDATA[Red Gate Software]]></category>

		<guid isPermaLink="false">/archive/2007/05/02/Profiling-with-ANTS-Profiler-and-MSTest.aspx</guid>
		<description><![CDATA[Had a question today from a customer interested in profiling his unit tests using MSTest which is part of the testing element of Visual Studio Team System. As I hadn&#8217;t used MSTest before I decided to take a look and see if you could use it with ANTS Profiler. After my first attempt at profiling [...]]]></description>
			<content:encoded><![CDATA[<p><a href="/photos/blog/images/417/original.aspx" mce_href="http://www.wahooga.com/photos/blog/images/417/original.aspx"><img src="/photos/blog/images/417/secondarythumb.aspx" mce_src="/photos/blog/images/417/secondarythumb.aspx" align="right" border="0" height="116" width="160"></a>Had a question today from a customer interested in profiling his unit tests using MSTest which is part of the testing element of Visual Studio Team System. As I hadn&#8217;t used MSTest before I decided to take a look and see if you could use it with ANTS Profiler. </p>
<p>After my first attempt at profiling only produced results for MSTest, I suspected that my tests were being run in a seperate process. Luckily MSTest has a /noisolation argument and once I used this everything ran as expected.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wahooga.com/2007/05/02/profiling-with-ants-profiler-and-mstest/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

