Tag Archives: C#

4. C# tip – Always return Task or Task <T> for Async methods

C# offers two key words Async and await to provide simplified asynchronous programming model in .net framework to easily write asynchronous code using concise syntax. It is based on Task based asynchronous pattern. The core of async programming are Task and Task<T> objects, which model asynchronous operations. We can pattern Task based asynchronous code mostly for following two use… Read More »

3. C# tip – Named tuples (C# 7 feature)

C# methods usually a single object or value. To return multiple values, we usually resort to creating a class or use struct to carry multiple elements. Unfortunately, it’s more work to create and maintain those classes which simply exist to return multiple values with no value addition in domain model and obscure class design principles.… Read More »

2. C# tip – Useful ASP.Net classes,utilities providing HTTP request context (Url info)

ASP.Net developers are all too familiar with System.Web namespace. This assembly pretty much holds all of ASP.Net together. While we are interested in understanding incoming HTTP requests thrown at our website or webapp, we spent a lot of time around HttpContext or HttpRequest classes which encapsulate HTTP request raw values into typed object properties giving us… Read More »

1. C# tip – Use is operator and as operator

In C#, type casting is so common and important thing.  C# allows to cast between types in multiple ways. As shown below, simple and most common way to do casting in C# which poor programmers tend to use is direct cast which anyways, ends badly.  Direct cast indicates speculative code. Avoid such vulnerable coding at… Read More »

C# HttpClient utility class for calling Web API

Folks writing C# code for consuming resources from external apis or mostly http systems typically use bunch of networking classes. Especially, there are WebClient, HttpClient HttpWebRequest     These classes, however, there is a good dose of confusion around their usage, when to use and their good and bad parts. We’re not going to get into that… Read More »

ASP.Net MVC Core Action filter sample for parameter validation

Filters have a special place in ASP.Net MVC Framework. Filters are custom classes/middlware that provide declarative and programmatic means to add pre-action and post-action behavior to controller action methods . Filters run in the context of MVC action processing pipeline. ASP.Net MVC supports 4 different types of filters. Authorization filter – deals with authorization logic.… Read More »

Generate multi checkbox list in asp.net mvc

Unfortunately, there is no built-in Html helper or Tag Helper which can render multi-checkbox list in asp.net mvc. Following syntax is old school I get it :-). I must have authored a Tag Helper extension. Any ways, this code snippet conveys the point rather in a traditional way

Simple pagination in asp.net mvc

Pagination is a common need when serving large datasets in any program. In a ASP.Net MVC web app, rendering a large dataset, it makes sense to paginate dataset for responsiveness  and serve that dataset records in terms of pages and a predetermined fixed page size. Following code snippet tries to achieve similar function of computing… Read More »

C#.Net Windows Service debugging and logging

C# .Net Windows service which can run in background at regular intervals. This code sample highlights two things. One, it shows how easy it is to bootstrap a windows service with little code. Second, how to debug a windows service. Debugging .Net windows service is a little tricky business. One easy way as shown below… Read More »

Left outer join in C# Linq query

Left joins are such a common occurrence in data access programs. There is no direct LINQ operator or syntax mapped for left joins. However, there is an extension method DefaultIfEmpty() which can be employed to perform a left outer join using LINQ syntax. DefaultIfEmpty basically returns a single element sequence with associated type’s default value… Read More »