.NET 2015 is the umbrella that represents the key pieces of the .NET platform delivered from Microsoft, including the .NET Framework, the recently announced .NET Core, and a shared common layer of packages, compilers and runtime.

So far, we have published 646 .NET and C# tutorials and articles, which have been read by over 64397393 (Sixty Four Million Three Hundred Ninety Seven Thousand Three Hundred Ninety Three) developers and architects.

Category Patterns & Practices Views: 6592
Abstract: In this tutorial, I will talk about ways to handle state in multi-threaded C# applications, including race conditions.
Category Patterns & Practices Views: 7427
Abstract: The article talks about type expressiveness and how we can use the functional Either monad in C# to implement complex business logic that reads as simply as a description of sequential operations. We’ll also look at a technique that allows us to express a complex scenario involving multiple systems as pseudocode and then convert that pseudocode into something we can actually ship to production.
Category ASP.NET Views: 6226
Abstract: In the 3rd and final part of the ASP.NET Evolution series, we will see ASP.NET transition to ASP.NET Core - an open source, cross platform - one that fully embraces the nature of the web.
Category ASP.NET Views: 8301
Abstract: Part 1 took an overview of the initial design of ASP.NET and how Microsoft reacted to the various changes in webdev. In Part II, we will now look at how those changes influenced the development of ASP.NET MVC and ended up transforming ASP.NET into a much more flexible framework composed of multiple libraries that solved different problems.
Category ASP.NET Views: 9241
Abstract: The first version of ASP.NET was released 17 years ago and during these years, it is fascinating to see how the ASP.NET team constructively reacted through these years to the major shifts happening on the web. Initially a platform that was closed and tried to hide and abstract the web; ASP.NET has metamorphized into an open source and cross platform - one that fully embraces the nature of the web. This is the first part of a series of 3 articles that will cover the history of ASP.NET from its launch to the latest ASP.NET Core releases.
Category Patterns & Practices Views: 11044
Abstract: In this tutorial, I will discuss about global state in C# applications. I will talk about the problems of global state and discuss a solution.
Category C# Views: 36521
Abstract: This tutorial gives an overview of all the new features in C# 8 which can be tried out using Visual Studio 2019.
Category Patterns & Practices Views: 17023
Abstract: This tutorial aims to be a guide for designing and implementing asynchronous and parallel data processing using the TPL Dataflow library from Microsoft. The TPL Dataflow consists of different building "blocks" that you compose in a pipeline fashion to structure your application in a clear way, allowing you to write readable and reusable C# code.
Category LINQ Views: 10718
Abstract: The way LINQ queries are executed depends on the kind of data source being queried. This tutorial talks about how a LINQ query is executed and how this affects performance.
Category C# Views: 6338
Abstract: The Absolutely Awesome Book on C# and .NET has released. Built around concepts, this concise 500 pages eBook is available in PDF, ePub (iPad) and Mobi (Kindle) and will help you build a solid foundation in C# and .NET. This book covers C# 6.0, C# 7.0, .NET Framework and .NET Core, with chapters that cover the latest developments to .NET and C# including .NET Standard and C# 8.0.
Category Patterns & Practices Views: 8746
Abstract: In this tutorial, I am going to go through some examples of data object design in C# and discuss some issues with them.

Less commonly used C# operators

Posted by: Damir Arh , on 12/31/2018
Category C# Views: 8451
Abstract: A tutorial on some less commonly used arithmetic, relational, logical, equality operators in C# and how to use them.
Category C# Views: 15746
Abstract: This C# tutorial explains how Garbage Collection works in .NET Framework and .NET Core, and some best practices to follow.

Composing Honest Methods in C#

Posted by: Yacoub Massad , on 12/16/2018
Category Patterns & Practices Views: 9750
Abstract: In this tutorial, I will provide a proof of concept in C# for composing honest methods. We will see how to create honest programs out of many honest methods.
Category C# Views: 14006
Abstract: The .NET framework Base Class Library contains many collection classes. This can make it difficult to decide when to use which. Grouping them together based on their properties can make the choice for a specific scenario, much easier.

The Evolution of C#

Posted by: Damir Arh , on 10/22/2018
Category C# Views: 13031
Abstract: Since its original release in 2002, C# has been regularly updated with new features. Today, we will look at the most important new features of each major language version and explore how the C# code we have been writing, has evolved through years.

Writing Pure Code in C#

Posted by: Yacoub Massad , on 10/14/2018
Category Patterns & Practices Views: 15339
Abstract: In this article, I will work on a C# game that contains impure code and work towards making the code pure. I am going to show you how to use PurityAnalyzer—an experimental Visual Studio extension I wrote—to help you write pure code in C#.
Category Patterns & Practices Views: 28674
Abstract: This tutorial demonstrates how to design software using the Command Query Separation (CQS) pattern. We will create a console application and will use C#, Entity Framework, Autofac and Log4Net for our example.
Category C# Views: 26692
Abstract: Can database-style sharding improve the performance of a multi-threaded C# application? This tutorial talks about the performance bottlenecks in sophisticated C# concurrency operations and how sharding can solve these issues.
Category C# Views: 15416
Abstract: The DotNetCurry team had the opportunity to interview Mads Torgersen, C#’s Lead Language Designer, and find out what’s happening in C#, and where does it go from here.

Writing Honest Methods in C#

Posted by: Yacoub Massad , on 7/22/2018
Category Patterns & Practices Views: 40487
Abstract: This C# tutorial describes approaches for making methods/functions more honest. A more honest method makes it easier for readers to understand what the method does by reading its signature, i.e., without reading its implementation.

Dynamic Binding in C#

Posted by: Damir Arh , on 6/27/2018
Category C# Views: 45978
Abstract: Dynamic binding in C# opens some possibilities which would not be available in a strictly strong typed language. This tutorial explores how C# supports dynamic binding.
Category Patterns & Practices Views: 19438
Abstract: This tutorial looks at a new approach to AOP called AOP via functions (in C#) as an attempt to mitigate the issues of the CQS approach.

C# 8.0 – New Planned Features

Posted by: Damir Arh , on 5/26/2018
Category C# Views: 80728
Abstract: In this C# 8 tutorial, I am going to introduce a selection of currently planned features which will most probably end up in the final release. All of the C# 8 features are still early in development and are likely to change.
Category C# Views: 52462
Abstract: C# 7 has added a number of new features to the language. This tutorial looks at the new features added to the minor versions of C# i.e. C# 7.1, 7.2 and and 7.3.
Category Patterns & Practices Views: 14676
Abstract: This article highlights that software development is a highly complex process with lots of smaller steps that a Software Craftsman should follow in order to build something of quality.
Category Patterns & Practices Views: 29982
Abstract: Learn how to design multi-threading safe data objects in C# and how to “modify” immutable objects using the DataObjectHelper Visual Studio extension. Also use F# to concisely create our data objects, and use them in C# projects.
Category .NET Framework Views: 20494
Abstract: A peek into the major differences between the .NET framework versions and how we can still target older versions of .NET framework even when using the latest development tools.
Category ASP.NET Views: 21944
Abstract: Learn how to handle Model level error messages which occur in ASP.NET Web API action methods that has been consumed using RestSharp.

How Well Do You Know C#?

Posted by: Damir Arh , on 2/5/2018
Category C# Views: 28968
Abstract: Even developers with good C# skills write code that might behave unexpectedly sometimes. This article features several C# code snippets which fall into that category, and explains the reasons behind the surprising behavior.

The Dataflow Pattern in .NET

Posted by: Yacoub Massad , on 1/18/2018
Category Patterns & Practices Views: 38426
Abstract: This article discusses the dataflow pattern, a variant of the producer-consumer pattern, along with examples of applying this pattern in .NET. Finally, you will also be introduced to ProceduralDataflow, a new library I created to help write clean dataflows.
Category C# Views: 26811
Abstract: Each newer version of C# is packed full of powerful and impactful features. In this tutorial I walk through the various versions of C# and share my favorite features from each release.
Category Patterns & Practices Views: 48996
Abstract: This article discusses the producer-consumer pattern in .NET, some reasons why we should use it and demonstrates some examples of how to implement it in .NET.
Category Patterns & Practices Views: 25594
Abstract: Flux is a new application architecture introduced by Facebook in May 2014. This article compares the MVC architecture with Flux from various perspectives.
Category C# Views: 58152
Abstract: Visual Studio 2017 15.3 update was a big milestone for C#. It was the release vehicle for C# 7.1 – the first minor version of C# 7. This article will take a closer look at its new features and the plans for future versions (C# 8) of the language.
Category Entity Framework Views: 51250
Abstract: New Features in Entity Framework Core 2.0. EF Core is a lightweight, extensible, and cross-platform Object/Relational Mapping (O/RM) framework for .NET.
Category ASP.NET MVC Views: 110944
Abstract: Create PDF in ASP.NET MVC using the Rotativa package to convert a HTML response directly into a PDF document and print the PDF document.
Category Patterns & Practices Views: 21612
Abstract: This article discusses problems and solutions related to resource management in complex C# applications. It also discusses automatic resource management that exists in the .NET framework.
Category Entity Framework Views: 27289
Abstract: This article takes a peek into the past, present and future of Entity Framework Core. It also explains the good bits and current shortcomings of EF Core, as well as some alternatives to it.
Category C# Views: 49360
Abstract: As a C# developer, you might already be writing some functional code without realizing it. This article describes some of the functional approaches you are already using in C#, as well as some improvements in C# 7 that make functional programming in it, easier.
Category Patterns & Practices Views: 46287
Abstract: This article describes how we can use Generics in C# to make our software more resilient to data-related changes, thereby improving its maintainability.
Category Patterns & Practices Views: 14486
Abstract: Is User Experience (UX) important or is it just a buzzword? This article analyzes the usefulness of UX in an application development process.
Category Patterns & Practices Views: 34619
Abstract: The article explains how Behavior Driven Development (BDD) works and provides a real-world example of how to use it to provide meaningful tests which can act as living documentation.

C# 7 - What's New

Posted by: Damir Arh , on 6/7/2017
Category C# Views: 132628
Abstract: C# 7 is the next version of C#. This article provides an overview of the new features in C# 7.0.
Category C# Views: 22993
Abstract: The DotNetCurry (DNC) Magazine is a Free bi-monthly .NET magazine. This post contains some frequently asked question and answers to enhance your reading experience.
Category Patterns & Practices Views: 26405
Abstract: This article discusses the treatment of data in large C# software applications. More specifically, it discusses runtime data encapsulation, behavior-only encapsulation, and treatment of state.
Category Patterns & Practices Views: 74044
Abstract: Effective error and exception handling in any kind of an application plays an important role in providing a pleasant experience to the user, when unexpected failures occur. This article talks about some effective error handling strategies that you can use in your projects.
Category C# Views: 132086
Abstract: The HashSet collection type was first introduced in C# v3 and with .NET 3.5. This article will explore features of Hashset and also compare its performance with List.
Category Patterns & Practices Views: 19114
Abstract: This article describes how to do unit and integration testing using the Composition Root as the source of Systems Under Test (SUTs).
Category Patterns & Practices Views: 37523
Abstract: We will discuss Code Quality in the .Net ecosystem, with a brief look at tools included in Visual Studio and other third-party commercial tools.





C# Book for Building Concepts and Interviews



jQuery CookBook