About one year ago a created a blog engine which was based on ASP.NET MVC 1. Since then technologies have evolved. When ASP.NET MVC 3 was released, I decided to update my blog engine to use the new RazorViewEngine. Instead of MSSQL Express I use Microsoft SQL Server Compact 4.0 together with the new Entity Framework 'Code First' approach.
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.
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.
Did you ever search an application in your start menu? Even with the search bar of Windows 7 or Windows Vista it takes some time to select the right shortcut. In this article I will show you a tool, which enables you to start your commonly used programs by speech.
The upcoming .NET Framework 4.0 will contain the new Task Parallel Library (TPL). The TPL will be used by PLINQ, which is a parallel implementation of LINQ to Objects. PLINQ makes it easier to take advantage of today's multicore CPUs, without caring about thread synchronization. In this post I will do some benchmarks to get an impression of the TPL's performance, compared to current technologies.
The DocumentViewer is a great control for showing XPS documents in a WPF application. You can zoom and search the document, but the control does not provide a public API for its Find functionality. Microsoft is going to fix this in a future release, until then you can use the following workaround.
The most important advantage of Feedburner is the subscriber count. But Feedburner is not an option for everyone, since the address of your feed changes if you move it to Feedburner. You could redirect requests to your feed to the new address, the disadvantage though is that when someone opens the URL in his browser the browser will show the new address. In this post I will show an approach how you can get a subscriber count, without moving your feed to Feedburner.
In this article I will show how you could create an Outlook Addin that enables you to enter the recipients of an email by speech. First we setup the speech recognition engine with the contacts from the address book. Then we listen to the relevant events to start and stop speech recognition automatically.
In the first part of this series I showed how to implement a data structure for graphs. Now let's continue with the UI. The UI should be capable of creating graphs consisting of nodes and edges with some mouse clicks. Moreover it should be easy to execute previously created graph algorithms and to show their animations.
A few years ago I had to create some animations of graph algorithms. That meant two things: I had to implement algorithms like Dijkstra or Kruskal and then create a visual representation of the algorithm, so one could see what happens step by step. The code was written in C++ using LEDA for the graphs data structure and AGD (now called OGDF) for visualization.
In this series I will describe how I implemented a tool for creating graph animations in .NET using WPF. This first part will discuss the underlying data structures. The second part will concentrate on the 3D stuff and the animations.