Technology Toolbox

Your technology Sherpa for the Microsoft platform

Jeremy Jameson - Founder and Principal

Search

Search

April 2010 Blog Posts

Save Significant Disk Space by Setting MaxPatchCacheSize to 0

A little over two years ago, I wrote a post about installing Visual Studio 2005 Service Pack 1 , in which I mentioned setting the MaxPatchCacheSize registry setting to 0 (in order to save some significant disk space while installing the service pack)...

Custom Table Headers With the ASP.NET GridView Control

In my previous post , I showed an example KPI dashboard for a Web application with a table similar to the following: Key Performance Indicators (Detail) Site 2009 Q3 2009 Q4 2010 Q1 Thresholds Duncan 93% 95% ...

Test Projects in Visual Studio 2010 Must Target .NET Framework 4

Last week I installed Visual Studio 2010 on my primary desktop. This morning, I opened my Fabrikam.Demo solution in the new version of Visual Studio, but chose not to upgrade the target framework when prompted by Visual Studio during the solution upgrade...

Outlook 2010 Does Not Work with Windows Server 2003 POP3 Service

I've mentioned in the past how I run a Windows Server 2003 mail server in order to use the POP3 service for basic e-mail functionality, and that I didn't have any interest in finding an alternative when I discovered POP3 is no longer available in Windows...

Leveraging the Power of Typed DataSets, IEnumerable<>, and LINQ

In my previous post , I extolled my love of typed DataSets in .NET because they are not only quick to design and update, but also very easy to understand. Essentially, if you can read an entity-relationship model (à la ERwin or a Visio database...

Still Crazy (About Typed DataSets) After All These Years

First off, my apologies to Paul Simon regarding the title of this blog post -- but I simply couldn't resist ;-) When architecting and building solutions for customers, I tend to make heavy use of typed DataSets. I believe I used them on my very...

Disable Pinging of Your Application Pool Worker Process in IIS

Yesterday I was doing another "Knowledge Transfer" session and before I started walking through some code in a debugging session, I took a brief detour to show the team how I recommend disabling the "ping" functionality in IIS for your application pool...

New Blog Template and Styling

Last Thursday, I mentioned a problem that would occasionally occur with the formatting on my blog posts (but only when viewing the default page -- listing the most recent posts -- and not when viewing individual posts). Tonight I thought I should spend...

Stagger the Startup of Your Virtual Machines

I've mentioned before how I run two Hyper-V servers in the " Jameson Datacenter " (each one hosting a variety of different VMs). On the rare occasion that a patch comes out on Windows Update that affects Windows Server 2008 Server Core edition (such...

Blog Post Formatting Issues

Earlier this week, a colleague of mine was building out his own version of the Jameson Datacenter based on a variety of posts I've written in the past. Over an IM conversation, he mentioned that some of my posts tend to run off the page -- making them...

Test-Driven Development (TDD) in the Real World, Part 3 (a.k.a. the EncryptionService)

In my previous post , I provided a walkthrough of Test-Driven Development (TDD), based on a very simple scenario (truncating a string to a specific number of characters). In this post, I'll provide another example using a more complex scenario. Suppose...

Test Driven Development (TDD) in the Real World, Part 2

In part 1 of this post, I provided my high-level thoughts on doing Test Driven Development (TDD) in the real world, but I didn't get around to walking through an actual sample. To start off simple (but still real world), let's imagine we have a scenario where we need to truncate a string to a limited number of characters for display or output purposes. However, instead of just chopping off the string at the specified number of characters, we want to apply a little "intell

TDD in the Real World, Part 1

Earlier today I presented a "Knowledge Transfer" session to a team of developers on my current project. If you've ever worked with consultants, you've probably experienced a "KT" session or something similar. In essence, it's just a meeting intended to...

Automated Deployments to DEV from the Latest Build Folder

Last month I wrote a post detailing how to increment the assembly version for each build . However, incrementing the assembing version is only part of my recommended build and deployment process . The following figure illustrates how deployments to...

Integrating Bing Search with a Community Server Blog

In one of yesterday's posts , I showed how you can easily filter the search results from Bing -- and other search engines -- to only show results from a specific site (e.g. my blog). This morning it occurred to me that I could integrate this into my...

Running Domain Controllers in Hyper-V

In a previous post , I noted how the " Jameson Datacenter " (a.k.a. my home lab) currently runs two domain controllers (DCs) on a couple of VMs. If you choose to virtualize one or more DCs in your environment, make sure you are aware of the considerations...

Narrowing Search Results to a Specific Site (e.g. My Blog)

A colleague asked me today if there was a way to search my blog for something specific. In my response, I pointed out that you can narrow your search results from Bing to a specific site. For example, suppose you were looking for a blog post that...

Creating a VM/VHD Library

Last week a colleague was asking me how I manage my various VMs. More specifically, he wanted to know how I created SysPrep'ed images in order to quickly "spin up" new VMs for development, testing, or demo purposes. Note that I like to keep my environments...

Unit Tests for ICloneable

A few years ago I developed a class ( SharePointSearchUrlBuilder ) for working with SharePoint Search URLs. The class is used to easily build or parse the various query string parameters used by SharePoint Search (e.g. keywords, search scope, additional...