VSTO - Importing Google contacts to Outlook 2007


For a long time I have been using Outlook to manage my contacts and appointments. I always synchronized my mobile phone with Outlook. After buying an Android device things have changed.
Now I use Google Contacts and Google Calendar to manage my contacts and appointments. Since I still use Outlook I need an easy way to synchronize Google with Outlook. Google provides GoogleCalendarSync to synchronize your calendar, but synchronizing contacts is only available for business customers.
In this post I will provide an Outlook addin which imports your Google contacts to Outlook.

.NET 4.0 - Covariance and contravariance

.NET, C#

Today I took a look at the new covariance and contravariance features of .NET 4. In this post I will explain the theoretical background and will provide some practical examples.
The code snippets cover most of the features of CLR 1 to CLR 4.

AOP - Interception with Unity 2.0

.NET, C#

Unity is a well known dependency injection container. Custom extensions can be created to extend its functionality. The download of Unity contains an extension for interception.
In this post I will show you, how interception can be used for separation of cross-cutting concerns.

PartCover - Coverage of unexecuted methods - Part 2

A few weeks ago I blogged about a problem concerning coverage of unexecuted code in PartCover. The problem was that the report generated by PartCover does not contain any coverage information about uncovered methods. That implicated, that my tool ReportGenerator calculated a wrong coverage quota, since the lines of unexecuted method were considered to be 'not visitable'.
I claimed that it would not be easy to create a workaround for the problem, but actually it isn't that difficult, if you use the right tools.

PartCover - Coverage of unexecuted methods

During the last weeks I received several emails pointing me to a potential issue in my tool ReportGenerator. The problem is that methods that have not been executed during a test run using PartCover, are marked as 'not visitable'.
I decided to take a closer look at the problem. In this post I will explain how ReportGenerator works and why it is not easy to create a workaround for the deficiency of PartCover.