C# Corner


Abstract and Delegate-based Factories in .NET

In part 2 of a series of columns on using factory patterns, Patrick Steele shows how factory patterns can be used to make your applications more flexible.

The Factory Pattern in .NET

Just as a car factory creates cars on an as-needed basis, we can create "factories" in our code to create objects for our applications' specific needs. In this first article of a series, we'll explain what the factory pattern is and how you can use it in your code to make your applications more flexible.

Multithreading in WinForms

The .NET Framework has full support for running multiple threads at once. In this article, Patrick Steele looks at how threads accomplish their task and why you need to be careful how you manage a WinForms application with multiple threads.

C#: The Good, Bad and Ugly

It's almost 2011. The Microsoft .NET Framework and C# have been publicly available for almost 10 years -- longer if you count the early betas.

5 C# Traps to Avoid

C# Corner columnist Patrick Steele offers a heads up on five gotchas that can trip up even veteran C# programmers.

Working with Windows 7 Thumbnails

In the second of two Windows 7-themed columns, Patrick Steele looks at how to get the most out of thumbnails with the Windows API CodePack.

Inversion of Control Patterns for the Microsoft .NET Framework

Explore new ways to manage dependencies in your applications with Inversion of Control containers and Dependency Injection.

Getting the Jump on Jump Lists

Windows 7 contains a number of UI improvements to the classic taskbar. One very useful feature for quickly launching an application with its associated files is Jump Lists. In this issue, we'll look at how you can utilize Jump Lists in your own Windows 7 applications.

Code Contracts in .NET 4

Patrick Steele looks into C# Code Contracts under .NET 4 and how they can streamline code validation.

Memory Mapped Files

Patrick Steele shows how you can realize major performance gains when working with large images by using memory-mapped files.

Use Mocking Frameworks to Improve Code Quality

C# Corner's Patrick Steele dives into mocking frameworks and how they can help you write more efficient and testable code.

Make Good Use of Code Maintenance

Patrick Steele illustrates useful techniques for modifying existing code while maintaining backward compatibility.

Using LINQ to Express Intent

Use LINQ outside of databases to make your code easier to read and maintain.

C#: Interface-Based Programming

Interfaces can make your applications easier to test and maintain.

The Azure Factor

How factoring out common patterns in your Azure worker roles can improve development.

Subscribe on YouTube