Click here to Skip to main content
14,266,079 members

Best C# Article of March 2015

This competition has ended

Contribute to CodeProject and you'll automatically be in the running for a monthly prize!

Each month at CodeProject we gather together the best of the articles submitted the previous month and ask our readers to choose the best of the best. Entry is automatic - just submit you articke and we'll do the rest.

Check out the submission guidelines for information on posting articles.

Current Entries

Articles that match the contest criteria are automatically entered. The top 50 entries are shown.

15 Mar 2015
Marc Clifton
What you may not realize about memory allocation and threads, and a little known thing called "Server Mode"
8 May 2015
Vahe Karamian
The ninth article in a series to discuss Unity 3D and how to get started with your own 3D projects.
11 Mar 2015
Ivan Yakimov
In this article I'll explain how to make something similar to load balancer on your single developer machine.
22 Mar 2015
Sacha Barber
Shows one way to Azure Cloud Service : Inter role communications
25 Feb 2016
Anton Angelov
If you need to rerun Failed Tests (MSTest), you can download the application that I wrote. Examples how to use it and code snippets.
26 Mar 2015
Sergey Alexandrovich Kryukov
Popular question on Forms collaboration, also answered for WPF
27 Mar 2015
Henrik Jonsson
Another solution for Extension properties in .NET
21 Mar 2015
Amit Singh Baghel
A useful tip to export a Div to PDF (with Unicode support) with the help of NReco-PDF Generator for .NET (C#), JQuery and Handler in ASP.NET
26 Mar 2015
Gaurav Aroraa
In this article, we will discuss basics of Azure API Management to manage our Web API.
26 Mar 2015
Vladimir Khorikov
This is the second article in my Functional C# blog post series - Primitive obsession
26 Mar 2015
Vladimir Khorikov
Functional C#: Immutability
5 Mar 2015
Claude He
This article is a sequel to my previous CCTreeMiner: An algorithm for Subtree Mining Problems. I fixed some bugs and made some improvements. Also I want to further describe this algorithm.
13 Nov 2015
OrlandoCurioso
An EF base DbContext that provides detailed information on current and totalized changes
13 Mar 2015
Aman Thakur
The tip explains how to make recurring payments using the Stored Credit Cards in the Paypal Vault.
19 Mar 2015
Jake Drew
How to mine webpages in parallel
27 Mar 2015
Muhammad Rashed Otahbashi
How to implement Drag and drop files and Images feature in ASP.NET MVC App
28 Mar 2015
Alaa Ben Fatma
Surf your PictureBox using scrolling bars
9 Mar 2015
Chinh Vo Wili
This tip describes how to use Selenium WebDriver extension for jQuery of RaYell and customize waiting element loading
21 Mar 2015
Mario Majčica
How to start an InPrivate instance of Internet Explorer by using BrowserWindow object.
25 Mar 2015
TarikHuber
Use STT (SQL Table Toolkit) to bind WinForm Controls to a DataGridview and to define ComboBox data sources
30 Mar 2015
Jeroen Richters
This article describes a technique to interact with the user from view-model level.
1 Mar 2015
Bankey Sharma
Some general guidelines to make application source agnostic and business adaptive
19 Dec 2015
RiniBoo
Automatically update your dynamic IP address, supports multiple DNS Providers and IpCheckers. Project was started to update Amazon AWS Route 53.
6 Mar 2015
Ankur .K. Vishwakarma
Calling server-side code from client-side using JavaScript and TextBox's onblur event
13 Mar 2015
Gaurav Aroraa
Introduction In these days RAD (Rapid Application Development) is growing at its large. There are numerous framework available to develop Web Applications or Web Projects. We can use either ASP.Net or ASP.Net MVC from Microsoft or any other framework. Although, NancyFx is having its own support for
17 Mar 2015
Antony Gino
Binding jQuery resizable with KnockoutJS
21 Mar 2015
Joe Dufresne
A small utility app which uses the excellent NAudio library to help organize backing tracks (audio files for band minus one situations), chord / lead sheets, lyrics, etc. Intended for Windows tablets running a full version of Windows 8.1.
12 Mar 2015
Graham D Smith
Continuous Delivery with VSO: Configuring the Basics
21 Mar 2015
SaahilPriya
The sample demonstrates how to count the number of OLE Automation Objects running at a particular time.
25 Mar 2015
Gaurav Aroraa
In this article, we will discuss all about how to consume ASP.NET WEB API using RestSharp for Windows Phone.
24 Mar 2015
Jeroen Richters
This article describes a solution that allows an application to load and execute a plug-in, and unloading it without a file lock on the assembly.
12 Mar 2015
TarikHuber
SQL Table Toolkit is a Class Library offering a quite large amount of tools for fast and easy work with SQL Tables
18 Sep 2015
Chris Gannon
An Azure-driven service for Arduino based PID controllers designed for control and monitoring of grills and other cooking devices.
3 Mar 2015
MatthewThomas
Dragging and dropping in WPF with a MVVM style architecture
25 Dec 2016
Mosi_62
Interpolation from polynomial to natural splines
6 May 2015
DrABELL
Web Application capable of NY MTA bus routes and stops monitoring in real-time/low-latency mode.
13 Mar 2015
DavesApps
C# Multithreading and Events
8 Oct 2017
DaveMathews
Speaker independent speech recognition in Mono and .NET C#
20 Mar 2015
Mario Z
Combining multiple .NET assemblies by customizing MSBuild's project file.
8 May 2015
Vahe Karamian
The eighth article in a series to discuss Unity 3D and how to get started with your own 3D projects.
24 Mar 2015
SMPS LLC
With this tip, you can show a map in your WinForm application with the Google Maps API v3.
17 Oct 2017
Alexander Iacobciuc
In this article you will find an implementation of a stream player control.
8 May 2015
Vahe Karamian
The sixth article in a series to discuss Unity 3D and how to get started with your own 3D projects.
14 Mar 2015
Melnikov Dmitry
Microsoft workflow - antimarketing
8 May 2015
Vahe Karamian
The fifth article in a series to discuss Unity 3D and how to get started with your own 3D projects.
2 Sep 2018
msiyer
Delegates in C# for beginners
11 Sep 2015
Anton Angelov
A new simplified AutoMapper library that you can use to map one object to another automatically. Compared to AutoMapper, ReducedAutoMapper is 180% faster.
9 Jun 2015
Freek Kootstra
This is a project to control the modelcars on a vintage toy car track using an Arduino and a Windows Azure service.
4 Mar 2015
Sudheer Reddy K
The article shows how to use the simplegrid which is used in knockout examples to which i've added support to accept column template to interact with outside DOM bindings, and stylish and simple pager and also multi select option.
5 Mar 2015
MatthewThomas
Adding a watermark to a WPF TextBox by only using XAML. No extensions. No Converters.

Current Participants

Those with articles that match the contest criteria are automatically entered.

Alaa Ben Fatma
Student
Tunisia Tunisia
I am a 19 years old software developer & a university student. I am a curious person, I love learning about new things and meeting more experienced developers & engineers.
alaabenfatma[a]yahoo.fr
Mario Z
Software Developer GemBox d.o.o.
Croatia Croatia
I'm a developer at GemBox Software, working on:
Alexander Iacobciuc
Software Developer
Russian Federation Russian Federation
Niko Bellic (Serbian: Niko Belić) is the main protagonist and playable character in the video game Grand Theft Auto IV. He is a 30 year old former soldier who moved to Liberty City to escape his troubled past and pursue the American Dream.
Aman Thakur
Software Developer
India India
I am a Software developer. I mainly work on Desktop applications using .NET framework and Web Application using MVC framework.
Amit Singh Baghel
Software Developer
United States United States
Passionate for Coding,kind of geek ,creative way of thinking, R&D freak,New Web technologies's admirer,Cappuccino lover that's what simply define me.

Great lines by Steve Jobs that I follow
"Stay Hungry Stay Foolish"
Ankur .K. Vishwakarma
Software Developer Maxus Technologies
India India
No Biography provided
Anton Angelov
CEO Automate The Planet
Bulgaria Bulgaria
Anton Angelov is an IT Consultant and Quality Assurance Architect at Innovative Lab. He is passionate about automation testing and designing test harness and tools, having the best industry development practices in mind. In addition, he is an active blogger and the founder of Automate The Planet. He strives to make the site one of the leading authorities in Automation Testing by presenting compelling articles, inspiring ardent discussions amongst the community. He is also one of the most-rated-answer authors of questions about Test Automation Frameworks (WebDriver) on Stack Overflow.
Antony Gino
Architect
United States United States
No Biography provided
Bankey Sharma
Software Developer
India India
No Biography provided
Chinh Vo Wili
Architect OSM Solution Vietnam Ltd. Co.
Vietnam Vietnam
We are working in Web Application with SPA, MVC domain. Beside we are master in Management Information Systems, how to use IS to improve decision making and knowledge sharing in open learning organization.
Chris Gannon
United States United States
Software industry professional with experience in both start-ups and established companies. Experience includes managing software design and implementation using both agile and waterfall processes, product management, and hands-on organizational leadership.

Specialties: Software development, product management, process transition and improvement, organizational development
Claude He
China China
No Biography provided
DaveMathews
United States United States
No Biography provided
DavesApps
United States United States
Languages/frameworks: C/C++, C#, .NET, WPF, ASP.NET
Experienced in UI development, frameworks and multi-threading.
DrABELL
Founder Infosoft International Inc
United States United States
Dr. Alexander Bell is a seasoned full-stack Software Engineer (Win/Web/Mobile). He holds PhD in EE/IT, authored 37 inventions and published 300+ technical articles. Currently focused on Java/Javascript, .NET/C#, Android/Mobile, SQL, 'Big Data', Machine Learning, AI, IoT. Alex participated in App Innovation Contests (AIC 2102/2013) with multiple winning submissions. Portfolio samples:

  1. Educational Web Portal
  2. NY Payroll Tax Calculator (#1 on Goog)
  3. Android Fraction Calculator "Fractal MK-12"
  4. Android Prime Factorization Calculator 18-digit)
  5. Semaphon™ semantic phone num-to-text converter
  6. Real-time NY Bus Tracking Web App (IoT)
  7. WebTV powered by YouTube .NET API (#1 on Goog)
  8. Engineering Calculator VOLTA
  9. Big Data: Facebook and YouTube
  10. NY City Trivia Quiz
  11. Publications by A. Bell
Freek Kootstra
Architect Freek Kootstra ICT
Netherlands Netherlands
No Biography provided
Gaurav Aroraa
Architect
India India
There is no age limit for learning and its never late, to start.
Graham D Smith
United Kingdom United Kingdom
Dr Graham Smith is a former research scientist who got bitten by the programming and database bug so badly that in 2000 he changed careers to become a full-time software developer. Life moves on and Graham currently manages a team of software engineers and specialises in continuous delivery and application lifecycle management with the Team Foundation Server ecosystem.
Henrik Jonsson
Software Developer
Sweden Sweden
Henrik Jonsson is a Microsoft Professional Certified Windows Developer (MCPD) that currently works as an IT consultant in Västerås, Sweden.

Henrik has worked in several small and large software development projects in various roles such as architect, developer, CM and tester.

He regularly reads The Code Project articles to keep updated about .NET development and get new ideas. He has contributed with articles presenting some useful libraries for Undo/Redo, Dynamic Linq Sorting and a Silverlight 5 MultiBinding solution.
Ivan Yakimov
Software Developer (Senior) Confirmit ()
Russian Federation Russian Federation
No Biography provided
Jake Drew
Student
United States United States
If you would like to know more about me, please feel free to visit my website at http://www.jakemdrew.com/

Thanks!

Jake Drew
Jeroen Richters
Program Manager Schindler Elevators
Switzerland Switzerland
I am a senior Program Manager, working for Schindler Elevators since February 2018.
I started off programming in C++ and the MFC library, and moved on to the .Net and C# world with .Net Framework 1.0 and further. My projects consist of standalone, client-server applications and web applications.
Joe Dufresne
United States United States
My alter ego is playing guitar in some stadium right now as you read this.

Back on earth, I'm probably reading a book on programming, practicing scales and modes on guitar or piano (driving my children insane), playing billiards, or cooking.

My addiction to programming started with a VIC-20 (3.5K of RAM !!!) and has spiraled out of control ever since.

My addiction to music, guitars, synthesizers, and sound in general probably began when I was born.
Marc Clifton
Architect Interacx
United States United States
Blog: https://marcclifton.wordpress.com/
Home Page: http://www.marcclifton.com
Research: http://www.higherorderprogramming.com/
GitHub: https://github.com/cliftonm

All my life I have been passionate about architecture / software design, as this is the cornerstone to a maintainable and extensible application. As such, I have enjoyed exploring some crazy ideas and discovering that they are not so crazy after all. I also love writing about my ideas and seeing the community response. As a consultant, I've enjoyed working in a wide range of industries such as aerospace, boatyard management, remote sensing, emergency services / data management, and casino operations. I've done a variety of pro-bono work non-profit organizations related to nature conservancy, drug recovery and women's health.
Mario Majčica
Software Developer (Senior)
Netherlands Netherlands
An accomplished software engineer specialized in object-oriented design and analysis on Microsoft .NET platform with extensive experience in the full life cycle of the software design process.
Experienced in agile software development via scrum and kanban frameworks supported by the TFS ALM environment and JIRA. In depth know how on all automation process leading to continuous integration, deployment and feedback.
Additionally, I have a strong hands-on experience on deploying and administering Microsoft Team Foundation Server (migrations, builds, deployment, branching strategies, etc.).
MatthewThomas
Software Developer (Senior)
United States United States
Matthew is a software developer currently living and working in San Antonio Texas. When not working on software, Matthew enjoys spending time in his backyard garden.
Melnikov Dmitry
CEO OptimaJet
Russian Federation Russian Federation
No Biography provided
Group type: Organisation (No members)


Mosi_62
Software Developer (Senior) Ewag AG, Switzerland
Switzerland Switzerland
Computers are very straight... They always do exactly what we tell them to do... Only, much too often what we tell them to do is not really what we want them to do Smile | :)

Writing Software is one of the most creative tings one can do. I have been doing this for more than ten years now and still having a lot of fun with it. Besides doing software for HMI's on C# for business, I enjoy very much to implement interesting algorithms and analyse the mathematics they are based on in my leisure time Smile | :)

For more detailed descriptions and math visit me on my own page

www.mosismath.com
msiyer
Software Developer HCL Technologies
India India
My name is M Sreekant. We South Indians have long names. My name, when completely expanded, is Mohan Sreekant Iyer. I like to be called "msiyer" due to economical considerations. You know what I mean Wink | ;)

I am a robot, a DNA replicator, made of chemical compounds. I try very hard to override nature's programming. A robot that knows, is a robot that seeks to know more.

I believe, any system or structure can be dissected by he who is curious enough. One day mankind will find loopholes in the laws of Physics that govern the cosmos, probably with my help. That will be the greatest day in my life or afterlife.
Muhammad Rashed Otahbashi
Software Developer (Senior) Starways
Saudi Arabia Saudi Arabia
Muhammad Rashed Otahbashi is a Microsoft Certified Professional and a Senior Application Developer with 10 years of experience

https://www.linkedin.com/pub/muhammad-rashed-otahbashi/50/529/947
OrlandoCurioso
Germany Germany
No Biography provided
RiniBoo
CEO Kitty Enterprise LLP
Canada Canada
I have been working for some corrupted government agencies in Canada who are known for scandal and milking tax payers' money. I always feel like I am in the wrong industry and want to try something more interesting because life is short. I am so tired of technologies after being in I.T. for so many years, I am a bit sick of everyday waking up and work for money, especially dealing with stupid annoying people, company politics and policies. But every time they give me a paycheck, I shut up temporary. Then the cycle begins again.....
SaahilPriya
Software Developer (Senior)
India India
C, C++, VC++ and now C#.NET and VC++.NET Professional. Have interest in all programming and go Wild for Playing Games. Now trying my Luck off the field in XML, MySQL, Netbeans8.2, LINUX. Wish me Luck.
Sacha Barber
Software Developer (Senior)
United Kingdom United Kingdom
I currently hold the following qualifications (amongst others, I also studied Music Technology and Electronics, for my sins)

- MSc (Passed with distinctions), in Information Technology for E-Commerce
- BSc Hons (1st class) in Computer Science & Artificial Intelligence

Both of these at Sussex University UK.

Award(s)

I am lucky enough to have won a few awards for Zany Crazy code articles over the years

  • Microsoft C# MVP 2016
  • Codeproject MVP 2016
  • Microsoft C# MVP 2015
  • Codeproject MVP 2015
  • Microsoft C# MVP 2014
  • Codeproject MVP 2014
  • Microsoft C# MVP 2013
  • Codeproject MVP 2013
  • Microsoft C# MVP 2012
  • Codeproject MVP 2012
  • Microsoft C# MVP 2011
  • Codeproject MVP 2011
  • Microsoft C# MVP 2010
  • Codeproject MVP 2010
  • Microsoft C# MVP 2009
  • Codeproject MVP 2009
  • Microsoft C# MVP 2008
  • Codeproject MVP 2008
  • And numerous codeproject awards which you can see over at my blog
Sergey Alexandrovich Kryukov
Architect
United States United States
No Biography provided
SMPS LLC
SMPS
Morocco Morocco
No Biography provided
Sudheer Reddy K
Software Developer (Junior) People Tech Group
India India
I'm working for People Tech Group,Hyderabad.
TarikHuber
Engineer ICS Logistik & Transport GmbH
Germany Germany
Born in Bosnia and Herzegowina where I studied Traffic and Communication in the University of Sarajevo. After the Bachelor, found a Job in a Logistic Company in Germany where I live and work now as an Software developer for our Company needs.

With programming I started as an hoby at work. For now I have almost 2 years programing experience. First with excel then VBA in Excel. That growed up to VBA with Access and a first Access DB. Then an SQL Server camed in and VBA with Access could not handle it. The next move was of cource VB.Net but with Visual Studio I came in contact with C#.
Vahe Karamian
Software Developer Noorcon Inc.
United States United States
Published Books:

Introduction to Game Programing: Using C# and Unity 3D designed and developed to help individuals that are interested in the field of computer science and game programming. It is intended to illustrate the concepts and fundamentals of computer programming. It uses the design and development of simple games to illustrate and apply the concepts.

Book Preview:
Preview all chapters

Available from:
Amazon.com
Barnes and Noble Book Store
Amazon Kindle (eBook)
iTunes - iBook (eBook)

Vahé Karamian
www.noorcon.com
www.facebook.com/NoorconInc
Vladimir Khorikov
United States United States
.NET software developer, software architect, DDD evangelist

Contest Entries and Requirements

  1. The contest period covers the the first day of the month 12AM US Eastern Standard Time and ends the final day of the month at 11:59:59 PM US Eastern Standard Time. All entries must be submitted during this period in order to qualify.
  2. Entries must be an article, or blog entry.
  3. With the exception of the Everything Else category, the article must be tagged with at least one of the tags corresponding to that competition's category (for example, to enter the C# Competition you would need to tag your article with a C# tag).
  4. Articles entries must follow the CodeProject submission guidelines.
  5. No cheating, lying, plagiarizing articles, chicanery, or kicking.
  6. Articles may only be considered for a single category. If an article is eligible for multiple categories (for example, it pertains to both the C# and Web Dev categories), CodeProject editors and judges will decide which category the article shall be entered in.
  7. No author can be nominated twice in the same category.
  8. If an author writes has two separate articles, each article may be considered in their respective categories provided none of the aforementioned rules are broken. For example, if an author wrote two separate articles, one related to C# and one related to VB.NET, the author and articles could be nominated in the C# and VB.NET competitions, respectively.
  9. In the event an author wins multiple competitions, and repeat, identical prizes, the number of prizes issued is solely at the discretion of the prize issuer.
  10. In the event an article has multiple authors and/or contributors, the number of prizes issued is solely at the discretion of the prize issuer.
  11. In the event of a tie,  the number of prizes issued is solely at the discretion of the prize issuer.
  12. Multiple votes from the same IP will be automatically disqualified.
  13. The judges’ decision is final and no correspondence will be entered into.
  14. Only those who live in jurisdictions in which this contest is legal may enter.
  15. Any breach of the rules and the prize will be awarded to the runner up.
  16. By entering the contest you agree to the rules, conditions of entry, and agree that your member alias and any submitted material can be used for promotional purposes by CodeProject.
  17. Entries shall be deemed to be submitted by the authorized account holder of the email address submitted at the time of entry unless clearly indicated otherwise. "Authorized account holder" is defined as the natural person who is assigned to an email address by an internet access provider, on-line service provider, or other organization (e.g. business, educational institution, etc.) that is responsible for assigning email addresses for the domain associated with the submitted email address.

Eligibility

This competition is open to software development professionals & enthusiasts who are of the age of majority in their jurisdiction of residence; however, residents of Quebec and of the following countries are ineligible to participate due to legal constraints: Cuba, Iran, Iraq, Libya, North Korea, Sudan, and Syria. Employees (or a member of their immediate family) of CodeProject or any of their affiliates, subsidiaries, advertising or promotional agencies are also ineligible to participate. Void where prohibited by law.

How to Enter

Entry is by the submission process described above. Please read the submission requirements before submitting your entry and ensure the article is tagged with at least one of the tags corresponding to that competition's category.

Lost, late, misdirected, or illegible entries will be disqualified. Any entry containing content that CodeProject deems objectionable for any reason will be disqualified. All decisions of CodeProject with respect to any aspect of the competition, including, without limitation, the eligibility of entries, are final and binding on all entrants in all matters as they relate to this competition. CodeProject reserves its right to modify the Rules.

CodeProject assumes no responsibility for lost, late, delayed, destroyed or misdirected mail, voice messages, email or any computer errors or malfunctions. No correspondence will be entered into with entrants.

CodeProject does not assume any responsibility for incorrect or inaccurate capture of entry information, technical malfunctions, human or technical error, lost, delayed or garbled data or transmissions, omission, interruption, deletion, defect or failures of any telephone or computer line or network, computer equipment, software or any combination thereof. Entry materials/data that have been tampered with or altered are void. If for any reason, in the opinion of CodeProject in its sole discretion, the competition is not capable of running as originally planned, or if the administration, security, fairness, integrity or the proper conduct of the competition is corrupted or adversely affected, including by reason of infection by computer virus, bugs, tampering, unauthorized intervention, fraud, technical failures or any other causes beyond its control, CodeProject reserves its right to cancel, terminate, modify, amend, extend or suspend the competition including cancelling any method of entry, and select a winner from previously received eligible entries. CodeProject reserves its right in its sole discretion to disqualify any individual it finds to be tampering with the entry process or the operation of the competition or to be acting in violation of the Rules or otherwise in a disruptive manner. CodeProject reserves its right to seek remedies and damages to the fullest extent of the law for any attempts to deliberately damage the competition web site or to undermine the legitimate operation of this competition. CodeProject shall not be held responsible for any errors or negligence that may arise or occur in connection with the competition including any damage to an entrant's computer equipment, system, software or any combination thereof, as a result of their participation in this competition or from downloading any material from the competition website where applicable.

You must sign in to participate in this contest.
This contest has ended.
1 Mar - 31 Mar 2015