Take advantage of sessions to store and manage information pertaining to a logged user's session.
Take advantage of polymorphism to isolate interface from implementation and promote flexibility in your designs
Leverage collections in .Net to store to promote type safety, facilitate code reuse, and improve performance when working with in-memory collection of objects
Parallel LINQ enables you to optimize your queries by splitting them into parts so as to execute these parts in parallel and hence boost the query performance. In this article we would discuss PLINQ and how it can be used in applications.
Take advantage of Windows services to build applications that you want to run in the background or execute automatically at predefined intervals of time.
Leverage application domains to provide a level of isolation inside the managed environment so as to enable multiple applications to run in a single process
Take advantage of indexers in C# to access an instance of a class or a struct by using indexes
WCF has matured a lot over the years, and the new WCF 4.5 comes up with many significant improvements
Take advantage of sockets in C# to implement inter-process communication for the purpose of sharing data over a network
Take advantage of contracts, a standard followed in WCF to specify what your WCF service is supposed to do
Take advantage of the facade design pattern to provide a simplified interface to a set of sub systems and hence reduce the dependencies and complexities in your designs
Take advantage of the mission-critical capabilities in SQL Server 2016 for real time operational analytics, rich data visualizations and improved data security
Take advantage of performance counters to get an insight on the performance of your applications
Take advantage of thread pools to create and use threads on demand and improve the responsiveness of your application
Take advantage of attributes to embed metadata information to your assemblies and decorate the business objects in your C# application.
Take advantage of the FxCop library to build custom rules and enforce code quality
Take advantage of the Builder design pattern to create complex objects in a step by step manner
Leverage action results to return data as an HttpResponseMessage object from your Web API controller method
Explore ways to build and host your Web API in a separate process
Unsafe code helps you to write unmanaged code that wouldn't be handled by the execution environment of the CLR. This article takes a look at how we can work with unsafe code in the managed environment of .Net.
You can take advantage of asynchrony to perform resource-intensive I/O operations sans the need to block the main or the executing thread of the application. This article presents an overview on asynchronous file operations using C#.
Take advantage of message handlers to execute cross cutting concerns earlier in the Web API life cycle
In this article I would present a discussion on implementing HTTP authentication in Web API with code examples to illustrate the concepts discussed.
Obfuscation makes your assemblies hard to reverse-engineer, thereby protecting your intellectual property
Although .Net is adept at reclaiming managed objects, you should follow certain guidelines to facilitate faster garbage collection to improve the performance of your application. This article presents a discussion on how garbage collection works and ....
.Net framework 4.5 and later versions can leverage the multiple cores in your system by allowing the JIT compilation to run in two processors in parallel; hence reducing the compilation time. This article discusses in depth how Multicore JIT compilat....
Generics enables you to work with type safe data with no boxing and un-boxing overhead. You can leverage generics to create typesafe collections, create classes and methods that can accept a type as a parameter. This helps your code to be much more m....
Take advantage of the Entity Client Provider -- a client side query engine, to execute queries against a conceptual model of data
Leverage the Adapter design pattern to map incompatible interfaces, increase code coverage, and reduce complexities in designs
Take advantage of Protocol Buffers media formatter in your Web API services to reduced payload and generate faster responses
There are three approaches to model your entities in Entity Framework: Code First, Model First, and Database first. This article discusses all these three approaches and their pros and cons
Take advantage of the streamed transfer mode to transfer large amounts of data using WCF
Caching enables the web page to be rendered faster, and proper use of caching minimizes or reduces database hits or consumption of server's resources
Take advantage of the dependency injection principle to provide support for pluggable implementations in your application and build loosely coupled, testable components
SignalR is an open source library written in .Net that simplifies the exchange of data between a web browser and a web server using WebSockets as a communication protocol. This article presents an in-depth discussion on SignalR.
The Liskov Substitution Principle (LSP) is a fundamental principle of OOP and states that derived classes should be able to extend their base classes without changing their behaviour
Understand the core concepts behind asynchronous programming to build applications that are responsive
The interface segregation principle states that the clients should not be compelled to implement an interface that contains declarations of members or operations that they don't need. This article explores this principle with code examples.
When working in WCF you should be aware of the concepts of instancing, throttling and concurrency to build services that are scalable and can provide better throughput
The main objective behind the Open Closed Principle was that once the application has been tested and deployed in the production system, you should no longer have to change the existing source code. Ideally, you should enable such changes to the exis....
ServiceStack is a good alternative to popular Microsoft technologies like WCF and WebAPI for building scalable web services because of its simplicity, high performance, true platform independence and less configuration. This article presents an overv....
Reduce coupling and maximize cohesion to build systems that are scalable, manageable and can be extended over time
Representational State Transfer (REST) is an architectural paradigm that is used to create reusable, scalable services. REST divides an application's state and functionality is divided into resources. This article discusses the best practices w....
This post discusses the Single Responsibility Principle and illustrates how one can avoid designs that are fragile and can break over time by following this principle.
This article discusses how routing works in Web API and how it is different from MVC
This article explores the various ways you can improve the application performance of web applications built using ASP.Net
Take advantage of the recommended best practices and tips to build applications using ASP.Net MVC that can scale and are responsive, fast, easier to test and maintain
This article discusses the best practices to optimize LINQ query performance
Take advantage of the best practices to build and host secure WCF services
Understand the factory and abstract factory design patterns to effectively manage object creation in your applications