Skip to main content

Coding Standards for C#


Coding Standards in C# by Ziggy Rafiq

Coding Standards in C#


The purpose of this document is to define a set of coding standards for C# projects. The purpose of these standards is to ensure consistency, readability, and maintainability of the codebase. The coding standards described in this document apply to all projects and codes developed by the organization.

Naming Conventions

  • Class names should be written in PascalCase.
  • Method names should be written in PascalCase.
  • Variable names should be written in camelCase.
  • Constants should be written in ALL_CAPS and separated by underscores.
  • Namespaces should be written in PascalCase.


  • Use 4 spaces for indentation.
  • Braces should be on a new line and aligned with the code block.
  • Put a space before and after every operator.
  • Put a blank line between methods to increase readability.


  • Write comments for all methods, classes, and complex blocks of code.
  • Use XML documentation comments for public members.
  • Use inline comments when necessary to explain complex logic.

Exception Handling

  • Use try-catch blocks for handling exceptions.
  • Catch specific exceptions whenever possible.
  • Always make sure to log the exceptions in a centralized manner.
  • Do not catch exceptions just to hide them; instead, let them propagate.

Code Review

  • All code changes should be reviewed by at least one other team member.
  • Code reviews should be performed before committing changes to the code repository.
  • Feedback should be constructive and aim to improve the quality of the code.

Final Thoughts 

Adherence to these coding standards is crucial for ensuring the quality and maintainability of the codebase. Deviation from these standards may be necessary in some cases, but it should be done with caution and a clear justification. It is the responsibility of every member of the development team to follow these coding standards.



Most Viewed Ziggy Rafiq Blog Posts

How to use Enum Data Values with .Net 6.0 Framework and Entity Framework Core 6

How to use Enum Data Values with .Net 6.0 Framework and Entity Framework Core 6 Overview An Enum (Enumeration) is a group of constants that are read-only value types. By default, the first value of the Enum variable is 0 i.e. Here we will create an Enum of Priorities type with read-only values of Highest, Normal and Low. We will set the read-only values using an integer assigning a number next to the value. By default, the integer value will start with 0. Here we will be assigning the integer value next to the Enum value such as in the below example and we will use a comma (,) to separate the item in the list of Enum(Enumeration).  We create Enum by using the Enum keyword and then using class, interface, and abstract. The reason we use an Enum is to ensure we improve our application performance and improve application readability, and maintainability, and reduces the complexity of the application hence why if you take a look at the example below of Status (NotStarted, Started, Complete

A Complete Guide to Using GUIDs in C# with Code Examples

  Overview In this post, we are looking at GUIDs (Globally Unique Identifiers), which are widely used in C# for generating unique identifiers for objects, entities, and resources in a system. In this post, we'll explore the basics of GUIDs in C#, their advantages, and how to convert strings to GUIDs. In this post, we have used Guid Generator to create the GUID from the following URL Address What is GUID GUID (Globally Unique Identifier) in C# is a 128-bit value that is used to identify objects, entities, or resources in a unique manner across different systems and applications. It is also known as UUID (Universally Unique Identifier) in some other programming languages.   GUIDs are generated using a combination of unique factors such as the MAC address of the network adapter, the current time and date, and a random number. The resulting GUID is a string of 32 hexadecimal digits separated by hyphens, such as "b86f2096-237a-4059-8329-1bbcea72769b&

Primitives Data Types and None-Primitives Data Types in C# with Code Examples

  Overview I wrote this post to provide an explanation of primitive and non-primitive data types in C#. C# is a strongly typed programming language, where each variable and expression must have a specific data type. C# data types are categorized into two primary groups: primitive data types and non-primitive data types. Primitive data types are the simplest data types available in programming languages. They are typically pre-defined data types and can represent a single value, such as a boolean value, character, or integer. Examples of primitive data types include int, char, float, double, and boolean, which are common in programming languages like C++, C, and Java. Non-primitive data types are also referred to as composite data types or reference data types. They are constructed from primitive data types and are more complex than primitive data types. Non-primitive data types can hold multiple values and allow for the creation of more intricate data structures like tables, lists,