Click here to Skip to main content
15,213,743 members

Best C# Article of April 2014

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.

21 Jul 2014
Cristian Moldovan
1 alternative  
jQuery unobtrusive validation plugin with Twitter Bootstrap 3 showing error messages as tooltips.
28 Jul 2014
lusgon
Uploading a file using WCF REST API and JavaScript
2 Dec 2014
Omar Gameel Salem
Implementation of the dynamic programming solution for the Travelling salesman problem
14 Apr 2014
Kemeny Attila
Service layer which hides the concrete technology details and doesn’t need to change when a new feature is implemented.
14 Apr 2014
Giannakakis Kostas
Port your libgdx games to run in Windows Phone and Windows 8 platforms
4 Oct 2014
Marco Bertschi
A really basic 3D Cylinder chart, drawn on a WPF canvas
1 Apr 2014
V.
Second article on creating a reusable framework
14 Apr 2014
CatchExAs
Emulate Human Mouse Input with Bezier Curves and Gaussian Distributions
8 Apr 2014
Claude He
CCTreeMiner: An algorithm for Subtree Mining Problems
31 Mar 2014
Manas Bhardwaj
Here is a minimalist example of using Html5 Canvas to save signature as Image using Web API
14 Apr 2014
Maninder Singh Puhi
Appropriate query to fetch required no of results from DB instead of getting all at on time for binding controls like Gridview, listview etc
8 Apr 2014
Pragmateek
Introduction I’ve recently wanted to demonstrate the relevance of the .Net ReaderWriterLock[Slim] synchronization primitives.
16 Apr 2014
Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)
We will see one example of how to bind one DropDownList using jQuery Ajax and C# WebMethod.
6 Apr 2014
Prabakaran T
Ultimate USB Reset Attribute with powerful option
4 Apr 2014
Arthur Peka
A tutorial to compare .NET objects
2 Apr 2014
Gareth Barlow (NBNi)
Integrating Roles Based Access Control with the Azure Active Directory Graph API in a ASP.net MVC application
24 Apr 2014
idonotexistatall
How to make an HTTP Server and some documentation on server-side protocol
5 Apr 2014
Pragmateek
Synchronization, Memory Visibility and Leaky Abstractions
14 Apr 2014
Arjun Singh Faguda
How to call cross domain Webserver(asmx) service from jquery and bind the Json result with Jqgrid
16 Apr 2014
Gordon Beeming (RSA)
Hubs.tt will save your life
1 Apr 2014
sbarnes
Sometimes better isn't, necessarily
15 Apr 2014
Cindy Potvin
Character Encoding with ASP.NET MVC Helpers
17 Apr 2014
jgauffin
This article explains how you can automatically proxy CORS requests in jQuery without changing your existing code.
23 May 2014
MB Seifollahi
A SharePoint Server Object Model List Mapper to CRUD
12 Apr 2014
_Noctis_
How to use Sublime text editor to help with your VS development
6 Apr 2014
Sebastian Solnica
Stopwatch vs. DateTime
7 Apr 2014
Nick Cosentino
IronPython: A quick WinForms introduction
17 Apr 2014
Martin Solovey
Simple API to Register/Listen for HotKey in .NET applications
20 Apr 2014
Zhuyun Dai
Your build will fail if you print 'Error:' in your custom Build Events of Visual Studio.
24 Apr 2014
Amogh Natu
This tip explains how to call a web method with a POST request using xml request messaage in C#.
19 Apr 2014
Begench Amanov
BaseAdapter that removes the need for some tedious coding
14 Apr 2014
Jack Ross
A nice CLI for managing the BMC trouble ticketing service
15 Apr 2014
Simon Jackson
A new breed of samples for MonoGame
14 Aug 2014
Meshack Musundi
Using CreateJS and TypeScript to create a simple HTML5 game
2 Dec 2014
Kenneth Haugland
Implementation of Bezier curve, Derivative Bezier curve, Cathull-Rom spline, Bessel-Overhauser spline, Lagrange interpolation and convex hull
6 Apr 2014
Rahul Rajat Singh
In this article we will see how we can perform custom validations by using custom data annotations in ASP.NET MVC
10 Mar 2016
Marco Bertschi
Serial communication with an Arduino Board via C# and the SerialPort class from the System.IO.Ports namespace
15 May 2014
Marc Clifton, Kornfeld Eliyahu Peter
Adventures in Javascript, JQuery, JQuery-UI, JQuery-tablesorter, and of course CSS and HTML
30 Jul 2014
Dirk Bahle
This is an alternative for "A WPF File ListView and ComboBox"
8 Jan 2015
John Atten
On March 20, 2014, the ASP.NET team released the RTM version 2.0 of the new Identity framework. The new release brings with it some long-awaited new features, and marks a substantial expansion of the security and authorization capabilities available to ASP.NET applications of all types. The ASP.NE
29 Apr 2014
Shai Vashdi
Simplifying the use of UI threads (using the Dispatcher) & new threads in WPF
3 Apr 2014
Chris Copeland
Using call stacks, rather than Regular Expression, to deconstruct mathematical formulae and calculate values.
1 Apr 2014
smoore4
Run programs on remote machines without PsExec or WMI
14 Apr 2014
Prasanna Krishnaswamy
To clear some of the misconceptions about interfaces
21 Apr 2014
Brady Kelly
A dictionary class for storing string descriptions provided by the Description attribute on enum fields.
10 Apr 2014
Fabio Ottavi
An implementatio of an ISO 7816 Virtual SmartCard
7 Apr 2014
Shai Vashdi
This article shows a simple way to implement Master-Detail pattern with hierarchical DataTemplate

Current Participants

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

_Noctis_
Software Developer
Australia Australia
Coding since I Remember myself ... went through Basic on Commodore 64 to C# on an 8 core i7... In between worked with c, c++, java, assembler, php, pascal, JScript, SQL based DB's and a bit of NoSQL as well.

Love software, and I'm usually fidgeting around with technology software and hardware on my free time.
Brady Kelly
Founder Erisia Web Development
South Africa South Africa
I am a software developer in Johannesburg, South Africa. I specialise in C# and ASP.NET MVC, with SQL Server, with special fondness for MVC and jQuery. I have been in this business for about eighteen years, and am currently trying to master Angular 4 and .NET Core, and somehow find a way to strengthen my creative faculties.
- Follow me on Twitter at @bradykelly
Amogh Natu
Software Developer
India India
No Biography provided
Arjun Singh Faguda
Software Developer
India India
No Biography provided
Arthur Peka
Software Developer
Latvia Latvia
No Biography provided
Begench Amanov
Software Developer
Turkmenistan Turkmenistan
I'm a freelancer. C#,WPF,CouchDB,Sqlite,Xamarin.Forms,Xamarin.Android
CatchExAs
Technical Lead Alpha Integralis Limited
United Kingdom United Kingdom
CatchExAs aka Nick Wilton runs Alpha Integralis, a software development consultancy to companies in the City of London.

Main interests include exploring Algo-Trading, Quant Development and Physics using C# and Java.

www.nickwilton.info/Blog
Chris Copeland
Team Leader
United Kingdom United Kingdom
I began developing at age 12, in 2002, when I learned to code basic HTML, CSS and JavaScript. I soon moved on to PHP web-development with MySQL to create interactive websites for personal projects and clients.

Later, in 2005, I explored developing in VB6 before advancing to VB.NET. After much resistance, I picked up C# development, and never turned back. Shortly afterward, I was introduced to C and C++ after working on an open-source game project. I contributed to this for several years, before hanging up my pointer->pants.

In 2008 I decided to join the growing community of Java developers, and began learning to code in this alternative model for cross-platform application development. Eventually, I would end up entering a job comprised of both Java and C# development.

Continue? Insert 20p..
Cindy Potvin
Canada Canada
Cindy Potvin is a software developer based in the Montreal area. At her day job, she creates web applications using the ASP.NET MVC framework and mobile applications using the Android SDK.
Claude He
China China
No Biography provided
Cristian Moldovan
Software Developer (Senior)
Romania Romania
No Biography provided
Dirk Bahle
Germany Germany
The Windows Presentation Foundation (WPF) and C# are among my favorites and so I developed Edi

and a few other projects on GitHub. I am normally an algorithms and structure type but WPF has such interesting UI sides that I cannot help myself but get into it.

https://de.linkedin.com/in/dirkbahle
ehab_nour
Engineer
Egypt Egypt
I'm Automatic Control Engineer,interested in Programming since I was 14 yeas old started with"Basic" then C++ then finally 2003 I moved to C#, recently I learned WPF to shine my Softwares like CAD s/w, I used to use programming languages to solve the mathematical problems,
17yrs ago I wrote a code to build an assembler for 8051, I made 64 bit I/O board for digital projects too, and code downloader testing board, both I designed on Protel PCB designer, I used them to make motor speed drive working with 8951 for a press machine..
I like physics too, it seems like a glasses when you wear, you see the world differently and know something you have never imagine..and you can understand, expect, find the answers more better.

I am using my analytic power to be creative for the new things and I prefer working for complex problems than easy ones.

I like reading, scientific applications, Hand works, wood works, documentaries, general history, history of the science ..


[Email : ehabnourm@yahoo.com]
Fabio Ottavi
Engineer
Italy Italy
No Biography provided
Gareth Barlow (NBNi)
Software Developer NBN International
United Kingdom United Kingdom
I am Gareth, working in the book industry specializing in EDI and B2B integration. Starting out as a child bashing out programs on the old commodore 64, I have since progressed from VB6 through the .net framework and loving c#, wf, wpf and where these are heading... hoping one day to have the excuse to play with silverlight.
Giannakakis Kostas
Software Developer (Senior) Self employed
Greece Greece
No Biography provided
Gordon Beeming (RSA)
Software Developer Derivco
South Africa South Africa
Father | Husband | Developer (@Derivco) | Triathlete

@Microsoft Dev Tech MVP (#mvpbuzz) focusing on DevOps

Opinions are my own https://beeming.dev
idonotexistatall
Software Developer
Uganda Uganda
I don't actually exist.
Jack Ross
Italy Italy
I work as consultant for primary customers with Security solutions based on Novell, NetIQ, McAfee, Imperva, Arcsight, and Netforensics.
jgauffin
Founder 1TCompany AB
Sweden Sweden
John Atten
Software Developer XIV Solutions
United States United States
My name is John Atten, and my username on many of my online accounts is xivSolutions. I am Fascinated by all things technology and software development. I work mostly with C#, Javascript/Node.js, Various flavors of databases, and anything else I find interesting. I am always looking for new information, and value your feedback (especially where I got something wrong!)
KarstenK
Software Developer
Germany Germany
I am living in germany and now living from programming for some Years. In my spare time I like sports as jogging, playing football (soccer) and basketball.

We must take care for our planet, because we and our family has no other. And everybody has to do something for it.
Kemeny Attila
Architect Nexogen
Hungary Hungary
No Biography provided
Kenneth Haugland
Engineer
Norway Norway
No Biography provided
lusgon
Portugal Portugal
No Biography provided
Manas Bhardwaj
Architect
Netherlands Netherlands

Read my personal blog at www.manasbhardwaj.net.

Maninder Singh Puhi
Software Developer
India India
No Biography provided
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.
Marco Bertschi
Software Developer
Switzerland Switzerland
I'm a young Software Engineer. Whilst I may accept a 'status quo' as given, it's my responsibility to improve it as soon as the opportunity arises.
Very familiar with the .Net framework since it has been the underlying foundation for most of my professional work so far. I'm that kind of guy who gets stuff done, while I may also improve the way things work whilst I'm at it. Generally can get along well with most people I meet as a professional.
Fervent volunteer firefigter, captain-ranked air force militia spec officer.
Great friend and generally nice to have me around - For a talk, a beer, or a bonfire (I might as well do all of those things combined). Oh, and I really love music - Rock & country that is, mostly.
Martin Solovey
Software Developer Currently Independant
Argentina Argentina
I took my first step on development with 15 years old at ORT High School in Buenos Aires.
After my graduation I started my professional career developing with Microsoft technologies such as .NET (C# & SQL Server) mostly web development.

Nowadays, after more than 4 years as a developer, luckily there is not a single day that I stop learning about development, best agile practices & patterns and cutting edge technologies.

I am actually working with a few friends, starting with small software factory company.
MB Seifollahi
Software Developer 1
Iran (Islamic Republic of) Iran (Islamic Republic of)
No Biography provided
Meshack Musundi
Software Developer
Kenya Kenya
Meshack is a software developer with a passion for WPF.

Awards,

  • CodeProject MVP 2013
  • CodeProject MVP 2012
Nick Cosentino
Team Leader Magnet Forensics
Canada Canada
I graduated from the University of Waterloo for Computer Engineering and I'm fortunate enough to work as a Team Lead of Software Engineering at Magnet Forensics. As a team lead, I'm often looking to encourage better coding standards, creative approaches to problem solving, and ensure that good clean code makes it into the code base. I want my team to produce top-notch code, but I want to make sure that we're all learning to become better developers along the way.

Blog: http://www.devleader.ca
Facebook: https://www.facebook.com/DevLeaderCa
LinkedIn: http://www.linkedin.com/in/nickcosentino
Twitter: http://www.twitter.com/nbcosentino
Google+: https://plus.google.com/+DevleaderCa/posts
Omar Gameel Salem
Software Developer
Egypt Egypt
Enthusiastic programmer/researcher, passionate to learn new technologies, interested in problem solving, data structures, algorithms, AI, machine learning and nlp.

Amateur guitarist/ keyboardist, squash player.
Prabakaran T
Software Developer (Junior)
India India
Workaholic!
Sr Software Developer.
Web Developer and Desktop Application Development.
Pragmateek
Instructor / Trainer Pragmateek
France (Metropolitan) France (Metropolitan)
To make it short I'm an IT trainer specialized in the .Net ecosystem (framework, C#, WPF, Excel addins...).
(I'm available in France and bordering countries, and I only teach in french.)

I like to learn new things, particularly to understand what happens under the hood, and I do my best to share my humble knowledge with others by direct teaching, by posting articles on my blog (pragmateek.com), or by answering questions on forums.
Prasanna Krishnaswamy
Software Developer (Senior)
India India
I am a passionate C# developer who aspires to be a good software architect in the future. I love to work on challenging tasks.
Rahul Rajat Singh
Product Manager
India India

I Started my Programming career with C++. Later got a chance to develop Windows Form applications using C#. Currently using C#, ASP.NET & ASP.NET MVC to create Information Systems, e-commerce/e-governance Portals and Data driven websites.

My interests involves Programming, Website development and Learning/Teaching subjects related to Computer Science/Information Systems. IMO, C# is the best programming language and I love working with C# and other Microsoft Technologies.

  • Microsoft Certified Technology Specialist (MCTS): Web Applications Development with Microsoft .NET Framework 4
  • Microsoft Certified Technology Specialist (MCTS): Accessing Data with Microsoft .NET Framework 4
  • Microsoft Certified Technology Specialist (MCTS): Windows Communication Foundation Development with Microsoft .NET Framework 4

If you like my articles, please visit my website for more: www.rahulrajatsingh.com[^]

  • Microsoft MVP 2015
sbarnes
CEO
United States United States
No Biography provided
Sebastian Solnica
Software Developer (Senior)
Poland Poland
Interested in tracing, debugging and performance tuning of the .NET applications.

My twitter: @lowleveldesign
My website: http://www.lowleveldesign.org
Shai Vashdi
Chief Technology Officer GalilCS
Israel Israel
My name is Shai Vashdi and I’m the CTO & Co-Founder of GalilCS.
GalilCS provides industrialized, low-cost IT services (ILCS) to corporations around the globe. We specialize in code modernization projects (VB6 to C# WinForms/HTML5, for example) and code refactoring projects.
Most of my work revolves around the management of these projects and the creation of new tools for refactoring code. As a bonus, I also get to lecture about Microsoft programming languages.
For more information, visit GalilCS.
Simon Jackson
Architect ZenithMoon Studios
United Kingdom United Kingdom
Long time game developer / IT maniac.
By day working as a lowly Technical Architect for a healthcare software firm, by night Masquerading as the Master Chief of ZenithMoon Studios.

At heart I'm a community developer breaking down lots of fun and curious technologies and bringing them to the masses.

I'm also a contributor to several open source projects, most notably the AdRotator advertising rotator project for Windows and Windows Phone.

After a hefty break with Windows Phone and Windows 8 I'm heading back to my XNA roots to show how beginners and current XNA devs can take their skills forward with XNA's bleak future.

ID&Xbox MVP & Best selling author
[Mastering Unity 2D Game Development] (https://www.packtpub.com/game-development/mastering-unity-2d-game-development)
[Unity 3D UI Essentials] (https://www.packtpub.com/game-development/unity-3d-gui-essentials)
smoore4
Database Developer
United States United States
I am an MBA with a bunch of MS certifications. Technically, I am a DBA, but I do a good deal of sys admin work and web development using .NET. I like to focus on business intelligence, database design, messaging architectures, and web services.
SRS(The Coder)
Software Developer
India India
Having more than 9 years of development experience in various Microsoft Technologies like :-
ASP.Net, MVC, SQL Server, WCF, MS Commerce Server, Xamarin etc.

Also hands on experience on the client side coding with JavaScript/jQuery and framework like AngularJS. Worked with third party ASP.net controls like Telerik and DevExpress as well.

Very much interested in Microsoft technologies to explore and implement. Now started to helping coders who really need me.

My Blog


Microsoft Technology Master

Programming Communities


JS Fiddle | Stack Overflow

Awards


Microsoft MCTS Certification in ASP.Net 4.0
Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)
Software Developer (Senior)
India India
Proud Indian | Author | TEDx Speaker | Microsoft MVP | CodeProject MVP | Speaker | DZone Most Valuable Blogger| jsfiddler

My Website & Blog

taditdash.co.in

Programming Community Profiles

jsfiddle | Stack Overflow

Social Profiles

Facebook | Twitter | LinkedIn

Awards


  1. DZone Most Valuable Blogger
  2. Microsoft MVP 2014, 2015, 2016, 2017, 2018
  3. Code Project MVP 2014, 2015, 2016
  4. Star Achiever of the Month December 2013
  5. Mindfire Techno Idea Contest 2013 Winner
  6. Star of the Month July 2013
V.
Software Developer
Belgium Belgium
Graduate Computer Sciences.
My interests go out to music and movies.
Author of the infamous MQOTD
Creator of this video

Owner of VMA Guitars
Zhuyun Dai
Architect
China China
Over 10-years experience in using Microsoft technologies.
At present, working as the architect of a clustered real-time data delivery and visualization system, responsible for the design of component architecture, product packaging and deployment, also targeting private cloud solutions for future.

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. Multiple votes from the same IP will be automatically disqualified.
  11. The judges’ decision is final and no correspondence will be entered into.
  12. Only those who live in jurisdictions in which this contest is legal may enter.
  13. Any breach of the rules and the prize will be awarded to the runner up.
  14. 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.
  15. 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 Apr - 30 Apr 2014