Deploying Asp.Net to a different time zone, Temporal Future Shock! Specified argument was out of the range of valid values. Parameter name: utcDate

by Jon 17. December 2010 09:57

You would have never of thought it but if you compile ASP.NET in a different timezone you could cause yourself some temporal problems.  I recently discovered that parts of ASP.NET are date specific and if you compile an ASP.NET application in one timezone (The UK), and deploy to another timezone (California) you may find that your web application won’t work correctly until the time catches up.  Its all to do with the date stamp in the assemblies, when you install your application onto a server in california the timestamps on the assembly files may be in the future and parts of the ASP.NET framework will refuse to load them.  Just by waiting 8 hours for time to catch up the problem will resolve itself!  Its defiantly worth saying this doesn’t effect all server setups I had no problems with a customer running server 2008 in a different timezone, I only came across this problem with an AJAX enabled system when a customer was running server 2003, but I haven’t had time to test different scenarios

I installed the application the AJAX was ‘working’ however nothing was styling correctly

I viewed the source of the page and started debugging by copying the WebResource.xsd url into different tab, I was surprised to see the following error:

Server Error in '/' Application.

Specified argument was out of the range of valid values.
Parameter name: utcDate

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: utcDate
Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

I returned to the system after 8 hours and the site was working and the error was gone! Be careful out there, this was a fully patched server 2003!

Tags: , , , , , , ,

asp.net | Deploy | development | General | IIS | Maintanance | TechSupport | vs2010


What is Lean?

by Jon 11. December 2010 13:08

Its a simple question, but as a software developers what do we think lean is and are we actually right?  I was asked this very question yesterday by a Lean Manufacturing Expert and I got it wrong!  As software developers we love to dive into detail and explain and extend a philosophy much more than we should.  If you look at the origins of lean it means just one thing and it pretty simple.

Eliminate Waste

If someone asks you what lean actually is remember it is one thing! Everything else you have read  and learnt about lean is just there to support this one principle; the elimination of waste.  Its Lean and simple, don’t make it more complicated than it needs to be!  Good luck in your quest to eliminate waste for yourself, in your business/day job and your customers.


development | General


2GB Memory Upgrade on a Acer Aspire One 1.83Ghz (533-23Dkk) from 1GB

by Jon 6. November 2010 16:55

This turned out to be trickier than I expected due to a stubborn keyboard, but upgrading my netbook to 2GB of memory has given me a pretty big performance boost so it was well worth doing.  One important point is do not touch the screws on the back of the notebook, the first step is to remove the keyboard and wont need to go anywhere near a Phillips screwdriver until you have removed the keyboard.

What you need:

  1. 2GB laptop memory chip, I used Kingston Memory 2GB PC3-8500 CL7 204 – Pin SODIMM, I got mine from aria.co.uk for £27.99 which seemed like a good/cheap price
  2. A small flat screwdriver to prise off the keyboard
  3. A small Philips screwdriver to remove the screws under the keyboard
  4. Optional - Anti Static wrist strap

The Tools you need - Anti Static wrist strap is optional

1. Open the lid and prise off the Keyboard with a flat screwdriver.  This is actually quite tricky, the keyboard has three clips which you need to press in.  When all the three clips which are coloured in red on the picture below are pressed in you can raise the edge of the keyboard past the clips.  Once you have raised the edge of the keyboard you will feel some resistance from three additional bumps that hold the keyboard in place.  The bumps are coloured in blue in the photo in below.  You need to slightly bend the keyboard on itself to force it past these three bumps.  When you have done this the keyboard will be free and will pivot around the base.

The holding clips, and bumps

2. Once you have removed the keyboard you will see 7 holding screws, remove these screws with a small Philips screwdriver.

Remove the 7 screws

3. When you have removed the screws, place the screwdriver in the small hole on the right to force the back cover off the notebook, turn the notebook over and prise the back cover off.

Push here, to push the backcover off

Prise off the back cover

4. Replace the memory with the new chip, the turn the netbook over and turn it on to confirm it is working correctly.

Swap out the 1GB chip with a 2GB chip

It boots, and shows 2GB

5. Turn the notebook off, put the back cover back on, screw in the 7 screws back in, clip the keyboard in and that’s it, sorted.  You can use the same steps if you want to swap out the HDD for a SSD.




TeamCity via IIS on port 80, using a reverse proxy, Part 2 host filtering so you can access Teamcity and other sites in IIS at the same time

by Jon 30. October 2010 23:29

If you followed my previous post how to setup ARR Routing to set up a reverse Proxy top access TeamCity over IIS 7.5 it will work perfectly and you will be able to access TeamCity on a different port.  However…. if you create a website under IIS on the same server you wont be able to access it because the reverse proxy is forwarding every site to TeamCity!  This might work for you but its not ideal if you want to run other IIS sites on the same server, the following steps will take you through setting up a condition so only url you specify will take you to TeamCity.

  1. Open up the Server Farm you just Created, and double click on Routing Rules
  2. Click on Url Rewrite
  3. Select the first Inbound Route and Press Edit
  4. Press the Add.. Button in the conditions pane
  5. Type {HTTP_HOST} into the condition input
  6. Ender the domain you want to want to forward into the pattern, all other domains will be passed to IIS normally
  7. Press Ok
  8. Press Apply and your done

Click on Routing RulesClick on Url Rewrite

Edit the Existing RuleSpecify the Host you want to Filter By

Tags: , , ,

Continuous Integration | development | IIS | TeamCity.Net


500.19 Internal Server Error, There is a duplicate ‘system.web.extensions /scripting /scriptResourceHandler’

by Jon 29. October 2010 22:22

Http Error 500.19 There is a duplicate ‘system.web.extensions/scripting/scriptResourceHandler’

After shipping your asp.net 2.0, 3.0 or 3.5 application to a new server you get the following error:

There is a duplicate ‘system.web.extensions/scripting/scriptResourceHandler’

Don’t worry you haven’t done anything wrong, your are just trying to ship to a new server that has been configured to use .NET 4.0 as the default, and lucky for you it is a quick and simple configuration change to fix it:

Change Application Pool to .Net Framework v2.0

  • Open Internet Information Services (IIS) Manager
  • Goto the Application Pools screen
  • Open the Application Pool offending web application(s) are using
  • Change the Application Pool to use dotnet 2.0 instead of .net 4.0
  • Hard Refresh the erroring page with a <Ctrl> F5

Tags: , , , , , , , ,

asp.net | Deploy | IIS | TechSupport

Powered by BlogEngine.NET
Original Design by Laptop Geek, Adapted by onesoft, and finally some tiny tweaks by JonAlb