ISerialized .Net, C#, Scrum and agile software development

28Apr/110

Log4Net for noobs

Posted by Pål Eie

Log4Net is a fairly old framework for logging, but it still serves it's purpose well! A couple of years back I wrote a tutorial on how to use Log4Net, today I stumbled across it, and I am quite pusseled that it is still as relevant today as it was back then. For those looking for a quick tutorial on how to use Log4Net, enjoy:

28Apr/110

Debugging an application hang or freeze

Posted by Pål Eie

A sudden freeze in an application can in some cases  be a rather cumbersome problem to solve. Many times we don't have any indications why the application freezes no matter if is a Java, C# or C++ application, web site or dll. In some cases we might have a log file to help us look for the source of the hang or freeze, but in many cases we don't have any indications of problem until we suddenly run in Release mode and far from our dev env!

Here I will try to give some guidelines on how to attack this problem.

30Mar/110

Whats new in ReSharper 6

Posted by Pål Eie

With the introduction of ReSharper 6, JetBrains proves once again that they are able to surprise us with new and exciting features we just got to have! Lets look at some of the new functionality that's available in ReSharper 6.

20Feb/110

Patching or updating a single dll in a release

Posted by Pål Eie

Ever had the need to update a release with a minor change to one dll? These steps allow you to update a single dll in a installation from msi etc. Note that all steps are necessary to avoid problems with mismatch in dll references, manifests etc. Trying to update a single dll without these steps normally results in the following error:

Could not load file or assembly MyAssembly, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

To avoid these kind of problems you have to make sure your dll's have the correct versions, and that all references are to the correct versions of all the assemblies (Normal problem whene using "1.0.*" as AssemblyVersion"

  1. Open you Visual Studio solution for the point of the release or todays date if there are no or few changes in the dll you want to update.
  2. Add you fix or change to your source code
  3. Go to references in the project you want to update (called project A)
  4. Delete all the references to projects in your solution (remember the names)
  5. Copy the same dll's from step 3 som programfiles or wherever you have the release installed. Copy the dll's to the bin/release folder of project A.
24Nov/100

RSSReader example code from my NNUG speech (WPF and Caliburn)

Posted by Pål Eie

November 24 I presented Caliburn and Caliburn.Micro at the .Norwegian .Net User Group community meeting in Stavanger.

In my speech I tried to sum up some of the advantages of using a robust framwork when doing developing in Silverlight or WPF, framworks like: MVVM Light, Caliburn or Caliburn.Micro.

The source code from my speech can be found at filehub.iserialized.com. The example is a fairly simple WPF application, and the GUI it selves sucks, as my focus has been:

  • Databinding
  • Core Caliburn functionality
  • The simplicity of using IoC in the combination WPF and Caliburn
22Nov/102

ISA Server error

Posted by Pål Eie

Struggled with following error yesterday:

Error

The request failed with HTTP status 407: Proxy Authentication Required (The ISA Server requires authorization to fulfill the request. Access to th Web Proxy filter is denied)

10Jun/102

Double-clicking Visual Studio solution files in Windows 7

Posted by Pål Eie

I guess I am not the only one annoyed by the fact that I could not open Visual Studio by double-clicking a solution file. Finally I looked into this problem and first found a simple, but not satisfying solution:

By setting Visual Studio to not run as an administrator. But if you ever tried running Visual Studio on Windows 7 without admin rights, you know this is not a satisfying solution!