111 Stories To Learn About Csharpby@learn
246 reads

111 Stories To Learn About Csharp

by Learn RepoApril 19th, 2023
Read on Terminal Reader
tldt arrow

Too Long; Didn't Read

Learn everything you need to know about Csharp via these 111 free HackerNoon stories.

People Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - 111 Stories To Learn About Csharp
Learn Repo HackerNoon profile picture

Let's learn about Csharp via these 111 free stories. They are ordered by most time reading created on HackerNoon. Visit the /Learn Repo to find the most read stories about any technology.

Like Java, but it sucks less.

1. How Blazor Is Going to Change Web Development

A couple of weeks ago I wrote an article about building and deploying a Blazor app without touching a Windows machine and realized maybe I should take a step back and explain what Blazor is and why anyone would use it. It's still fairly new to most in the front end development world, but it's awesome and you should check it out.

2. How to Run C# Azure Functions in an Isolated Process

We can run our C# Azure Functions in an isolated process, decoupling the version of .NET that we use in our functions from the runtime version.

3. Fluent Parallel Tasks in C#

Performance is often one of the key focus points when building enterprise software. Many of the systems that we build rely heavily on communications with other systems. When these external communications become slow, then our software becomes slow. Unfortunately, we often have no control over the response time of the services that we depend on. However, we can optimize the way that we communicate with those services in order to ensure maximum performance.

4. A Guide to Using MongoDB Database in a ASP NET Core Web API Application

When you think about database providers for ASP NET Core apps, you probably think about Entity Framework Core (EF Core), which handles interacting with SQL databases. But what about the NoSQL options? A popular option for NoSQL is MongoDB. So in this article we're going to learn how to create a simple ASP NET Core CRUD API using MongoDB as the database provider.

5. SOLID Principles of Object Oriented Design And Architecture

Object oriented programming (or OOP) is a style of programming that encapsulates data and behaviours into models known as objects. In this way, related code is grouped together and kept separate from other code, and provides reusable blocks that can be used to rationalise the problem at hand.

6. The Difference Between Covariance and Contravariance in .NET C#

Simple explanation of DotNet (.NET) CSharp (C#) Variance, Invariance, Covariance, and Contravariance. Providing a Cheat Sheet.

7. Higher Order Functions in C#: A Practical Example

If you have been programming for any length of time, you may well have come across higher-order functions but may not have fully appreciated them.

8. How to Use C# Azure.Data.Tables SDK with Azure Cosmos DB

In this article, I’ll show you how we can perform simple operations against a Azure Cosmos DB Table API account using the new Azure.Data.Table C# SDK.

9. How Bindings in Azure Functions Work

What Bindings are in Azure Functions, How they currently work with in-process Functions, and how they work a little differently for isolated functions.

10. The Top 4 Nuget Packages According to This Software Developer

Software development is a complex task and as a developer you gain nothing from "reinventing the wheel". I'm a firm believer that you should make your life as easy as possible as a developer, by using tried and tested packages where possible; it will take so much headache out of your development experience.

11. Top 25 C# Programming Tips

Hi everyone! There is a lot of information about different C# features. About various life hacks and best practices in this language. I want to tell you about equally useful, but less popular tips for working with this language.

12. .NET Garbage Collection, Here We Go!

This post discusses the aggressive and hungry nature of the garbage collection process in .NET as well as a concept that is often referred to as eager root collection.

13. Learning Fundamentals of C# and .Net Framework

We are always talking about the mainstream programming languages to an extent where Python, Java, SQL, etc, are all that we see mostly. There are many other dynamic frameworks and languages like our topic of choice today; C sharp or C#, which are playing an integral part in global software development communities. Let's take an in-depth look at the fundamentals of C# as well as the .Net framework to better understand the exclusivity, features, and their advantages.

14. C# Parameter Null Validation, Explained

It is a very common practice to check for null in parameters:

15. How to use Azure Functions Core Tools to create a local.settings.json file and run Functions locally

We use Azure Function Core Tools to create a local.settings.json file and import our Function settings to that file so we can run our Functions locally.

16. How To Implement Facebook Authentication And Authorization In Server-Side Blazor App


17. .NET Core Configuration is Simple

If you write code with .NET Core one day you will have to configure your application.

18. How to Generate a QR Code Image in Four Lines of Code

QR code is a computer-readable identification that contains data about the item to which it is attached. The article demonstrates how to generate QR-Code image.

19. How to Use Assertion Scopes to Execute Multiple Assertions in C#

Fluent Assertions is a .NET library that provides use with a bunch of useful extension methods that allow us to test our C# code in a more natural way

20. How to Add Payment Method onto Your Website

When customers shop online, they often enter their credit information into a secure payment gateway. This protects the customer and the business.

21. Introduction To Property-Based Testing in C#


22. What is a Façade Design Pattern?

Use the facade design pattern to simplify the interaction between subsystems. It provides a single entry point to a subsystem,

23. How to Publish NuGet Packages to a Private Feed Using Azure Artifacts

We can publish NuGet packages to internal feeds hosted in Azure Artifacts easily via pipelines defined in YAML files.

24. Advanced Property Pattern Techniques in C# 8.0

The article describes how pattern matching effectively utilises and processes data in forms not part of the primary system.

25. Fun with Flags: How to Make Flags in C# with Enums and Bit Shifting

Vexillology and Bit Shifting are often not talked about together. Today though, I encode numbers like 52357729848 into country flags using enums in C#.

26. How to Run a Microsoft .NET Docker Image in C#

Docker has become an essential tool in modern software development, providing an efficient and portable way to package and distribute applications.

27. How to Manipulate DateTime in .NET to Help you Code Better

Testing code that uses .NET's DateTime.Now sucks!!!! This is how to mock them, to properly validate DateTime when writing unit tests.

28. How to Add GraphQL Wrapper Over REST API

How to add GraphQL wrapper along with swagger documentation in ASP.Net C# using NSwag tool

29. How to Build The Flames Love Calculator Game in C#

Discover the true spark of your love with this fun and romantic game! Enter your name and the name of your partner, and let Flame Game do the rest.

30. C# 8.0 Nullable Reference Types Are Here

C# 8.0 just rolled out with plenty of new features. One of the most important is the support of nullable reference types (NRT). A bunch of words that don't seem to explain what it does. I mean, aren't all types (except value types) already nullable?

31. ASP.Net Core Blazor Hosting Models

It is very glad to see that the web technology is improvising day by day. One such notable improvement is the introduction of WebAssembly and direct usage of them in evergreen browsers.

32. How To Use Filter Pattern With Generic Lambda Expression

The filter and pipeline patterns can be optimized with code reduction using lambda expression(shortcuts for anonymous method) as concrete filter condition. To demonstrate concept, the sample WPF UI application was created. Here is Source code

33. Figuring Out When Not To Use DI, IoC, and IoC Containers in .NET C#

Learn the best practice on when to use Dependency Injection (DI), Inversion of Control (IoC) and IoC Containers. DotNet .NET CSharp C# Design Architecture

34. Building Your Own Toolbox with Extension Methods in C#

Extension methods are one of the coolest features of C#. It allows our custom methods to be used on the objects without needing to extend or change the underlying class.

35. How to Combine .NET Core and Python for Seamless Integration

Check out this post to see how you can use Python from inside a C# .NET Core application with a more modern approach than my original articles using Pythonnet.

36. Accessing the Record Type in C# for Earlier .NET Versions

Are you stuck on earlier versions of .NET but want to get your hands on the hot new record types? Fear not! Check out this simple solution to simplify things!

37. Everything Wrong With The State of Unit Testing Today

Unit testing nowadays is pretty much always done using a technique called example-based testing. The method is simple; we run a series of examples against an algorithm, and we validate that we get the expected result.

38. How To Write Decoupled Code with MediatR: The Mediator Pattern

I recently wrote a blog post introducing some of my favourite NuGet packages: My Top 4 NuGet Packages for ASP.NET Core. In that post, I briefly introduced a package called MediatR. Today, I will dedicate this post to revisiting MediatR in further detail.

39. A Guide to Using Scoped Services Inside Singletons


40. C# 8.0 Indices and Ranges

Compared to other languages, C# was way behind in capabilities to handle data efficiently. Well, those days are over now. Microsoft just improved the C# syntax, making it easier for developers to manage data in arrays.

41. How to Set up a Formatting Standard in Your Code Editor (And Why You Should!)

In this post I'll show how to maintain a standard for everyone who works in the code, no matter the editor used.

42. C# Sorting - A Minor Error

Is it true that the inverse of a negative number is always a positive number? If you think it's true, you might get a subtle error while implementing comparison

43. Testing in C#: Property-Based Testing With Input Generators


44. An Easy Guide to Learn EF Core Migrations

Entity Framework Core (EF Core) is an object-relational mapping (ORM) framework that allows developers to interact with databases using .NET objects. One of the

45. On the Love of Problem Solving & Programming: Noonies Nominee Sukhpinder Singh

Noonies interview with Sukhpinder Singh, Senior Engineer at SourceFuse.

46. Behaviors Trees in AI: Why you Should Ditch Your Event Framework

In this article, I look into some of the shortages of event-driven programming and suggest behavior trees as an effective alternative, suitable for back/front-end application development.

47. Fixing Logging Issues In ASP.NET: TelemetryClient Vs. ILogger

TelemetryClient vs ILogger or how to improve logging experience in C# ASP.NET for Application Insights

48. What is New in .NET 5

.NET 5.0 was officially released this week, bringing with it a range of improvements to the .NET ecosystem. Like many .NET developers, I was quick to download it and give it a test run. This article discusses some of the most exciting new features in .NET 5.

49. How to Call a Stored Procedure Using Dapper in C#

Dapper is a popular and easy-to-use object-relational mapping (ORM) tool for .NET developers. It is lightweight, fast, and provides a simple way to execute SQL

50. What to be Wary of With Iterators and Collections in C#

Which approach is better: an iterator or a materialized collection? In this article we explore common pitfalls with BOTH of these different approaches!

51. Property-Based Testing: The Diamond Kata, First and Last Line Content


52. What is Primitive Obsession and How Can we Fix it?

Primitive obsession is a code smell in which primitive data types are used excessively to represent your data models.

53. How to check if a string is REALLY empty with C#

Is a string empty? What if it contains only white spaces? You shouldn't reinvent the wheel, since .NET exposes methods exactly for these cases: String.IsNullOrE

54. Setting up a Debugging Environment for Azure Functions 2.x using VS Code


55. The Battle Continues Between Dapper and EF Core

Dapper and EF Core are popular .NET libraries for data access and management. Both have strengths and weaknesses, and the choice will depend on the project's sp

56. 5 Performance Tips For .Net Developers

Hi everyone! Today I want to share with you some .Net 5 performance tips with benchmarking!

57. OWASP Top 10 .NET Protection Guide (Part 2)

The OWASP Top 10 is a standard awareness document for developers and web application security. It represents a broad consensus about the most critical security risks to web applications.

58. A Guide to Running ASP.NET Core & SQL Server from Docker

I've recently gotten into using Docker in my development cycle and I'm really enjoying how much of a wonderful tool it is. One thing that always used to be a pain was setting up a development server to run SQL Server. Now with Docker, I can just spin up a Docker container and I instantly have a SQL Server ready to go.

59. How to Code a Blog With ASP.NET Core and C#

Learning by doing

60. How to Use the Iterator Pattern in C#

According to Gang of Four, the iterator pattern provides a process to obtain the aggregator object without knowing its implementation.

61. An Introduction to F# as Microsoft's / .NET's Answer to a Functional-First Programming Language

Recently I've been learning how to write code in F#. For those who haven't heard of it, F# is Microsoft's/.NET's answer to a functional-first programming language. My motivation was to learn a functional programming language that would make coding for scientific computing and data analysis more expressive, concise, and maintainable, all while fitting seamlessly into the .NET ecosystem that I already know and love. F# fits that bill perfectly.

62. Introduction to Winforms UI Automation with Python & Appium

Microsoft announced some time ago that Coded UI automation was being deprecated - and that the recommended replacement for testing was Appium with WinAppDriver.

63. What's Pattern Matching in C# 8.0?

Is it me or Functional programming (FP) seems to be trending lately? FP languages like Haskell, Elixir, and F# are stronger than ever and large frameworks try to adopt a more functional approach. Even C# tries to include functional constructs in the language.

64. Is it Enough to Define IMyInterface<T>? Do I Need IMyInterface as Well?

Best Practice for designing Interfaces in DotNet (.NET) CSharp (C#). When to define a non-generic interface in addition to the generic interface.

65. How to Create a Dependency Aggregate Class to Manage DI: Clearly Exemplified

Dependency injection (DI) is a wonderful thing. Simply add your dependency as a parameter to the constructor (most commonly) of your class, register it with you DI container, and away you go - the DI container will manage the rest. Some of the key benefits of DI are: greater testability, greater maintainability, and greater reusability.

66. How To Migrate from .NET Core 2.2 to .NET Core 3.1: Real Life Project


67. How to Transform Your C# Code With the Command Design Pattern

Command Design Pattern is one of the behavioural design patterns used to encapsulate a request as an object, thus enabling to parameterize clients with differen

68. Start Your C# Journey With This Guide

As new programmers, we all have to get started somewhere. If you're looking into C# and want to get learning, then this article focuses on all of the C# basics!

69. How to Create a Serverless API Using Azure Cosmos DB

In this tutorial, we’ll build a Web API using Azure Functions that stores data in Azure Cosmos DB with MongoDB API in C#

70. Understanding Tasks, BackgroundWorkers, and Threads

In C# we have access to Tasks, Threads, or BackgroundWorkers. In this article, we will explore how each one operates at a high level.

71. How Generics Differ in Java and C#

Java and C# Generics look very similar but they work differently. The difference is because of how the support for Generics is implemented in these languages.

72. How to Set up Selenium in Visual Studio for Automated Browser Testing of Web Apps

In this Selenium C# tutorial, we are going to help you set up Selenium in Visual Studio and run your first Selenium C# example script.

73. .NET vs Node.js

The Contenders

74. How To Optimize Background Tasks Using Hangfire and ASP.NET Core

Hangfire is a .NET library that makes it really easy to adding background tasks to your .NET app. It supports one-off "fire and forget" tasks, as well as scheduling recurring tasks. On top of that it supports persistence, so all of your tasks will continue to exist even after restarting your app.

75. Origin of Interface in Object Oriented Programming

Interface is mostly viewed as a useful feature to write more maintainable code. But the concept of Interface developed to address a different issue with C++.

76. How Lazy Loading Works in EF 8 Preview Release

Entity Framework (EF) is an object-relational mapper (ORM) that provides a set of tools to work with databases in an object-oriented way.

77. Modularity Concept in Java and .Net

Modularity is central to modern software engineering - or may be all type of engineering not just software. We’ll explore support for modularity in Java and .Net platforms, but before that let’s first try to find answers for what and why of modularity.

78. What You Need to Know About the Unit in Work in C#

The Unit of Work design pattern is a software design pattern that is widely used in software development. It is a way to group database-related operations

79. How to Simplify Data Access Using EF

The repository architectural pattern is frequently employed in software development to segregate an application's business logic from the data access layer. It

80. How to Create Multi-Container Applications With Docker Compose and C#

Creating a multi-container application can be daunting, but Docker Compose and C# can make it much more straightforward. This article will walk us through the s

81. Learn C# Programming Course for Free

Learn c# programming with examples. C# is an object-oriented programming language, and it is useful to build web, windows, mobile applications.

82. Should i Build An Analyzer for C# or .NET?

edit: Unlike the conclusion of the post below, I based the analyzer on C# CaaS and not .NET IL. Its now available to use The latter doesn't preserve the order of members of a class either in the dll or pdb. Although, after looking at some open source C# projects, this capability wasn't used by default.

83. Understanding Chain of Responsibility Pattern in C#

According to Gang of Four, it defines a chain of responsibilities to process a request. In other words, pass the request from one object to another until an obj

84. Exception Handling with Examples

Exception handling is common to most programming languages, and the mechanism and behaviors are similar in most languages: try\catch\finally. It is well documented. We are not going to discuss that.

85. What's Coming in C# 9.0 [Preview of Features]

In past five years, Microsoft had made a rapid enhancements in C# by introducing a plenty major features with every new version, As planed, C# 9.0 will be officially released with .NET 5 on November 2020. So we will dive into C# 9.0 new features that released on 20 may 2020 as a Preview.

86. Building Dev Tools and Designing C#: An interview with Facebook's Eric Lippert

About: Eric Lippert

87. 5 Tips to Improve Your Productivity in C# 8.0


88. Learn C#: A Cheat Sheet for Newcomers

C# (pronounced “C sharp”) is a modern, object-oriented programming language developed by Microsoft. It is widely used for creating desktop applications, games,

89. Scalable Aggregates: Reducing Complexity in Command Handlers

Aggregates are the heart of your system. They hold domain logic and are responsible for emitting events that will eventually make your data consistent across multiples data projections and bounded contexts.

90. How to Stop String.GetHashCode() in .NET C# from Driving You Crazy

Know when to depend on String.GetHashCode() in DotNet (.NET) CSharp (C#), and when not. Coding Programming Software Development Engineering Architecture

91. Making a Static Website with C#, Blazor, AWS And GitHub Actions

If you follow the Microsoft development community at all, you’ve most likely already heard of the new web development framework called Blazor. If you haven’t heard of it, here’s an overview from the product site:

92. Don't Get Bitten by Hidden Bugs: Test Driven Development (TDD) and AAA Testing via xUnit

Test Driven Development (TDD) is a software development cycle that focusses on describing the behaviour of your code first using tests

93. How to Use .NET C# for Web Scraping

A guide on how to do Web Scraping in DotNet (.NET) CSharp (C#), with examples. Software Development Coding Programming Selenium HtmlAgilityPack Puppeteer

94. What are Default Interface Methods in C# 8.0?


95. Fully Covering I/O File Based Applications in .NET C# Using Unit Tests

How to achieve 100% coverage of I/O file based applications in DotNet (.NET) CSharp (C#) Test Driven Development (TDD) Development Software Best Practices

96. Using the Builder Design Pattern in .NET C# to Develop a Fluent API

A step-by-step guide to developing a Fluent API from scratch in .NET C# using the Builder Design Pattern.

97. Spotting and Preventing Formatting Errors in Your Code

In this post I'll show how to use Roslyn Analyzers with C# to enforce some standards of code quality and code style on your code.

98. Analyzing Your Code With SonarQube Running via Docker Image

Dockerize Your C# Code Analysis: A Beginner's Guide to SonarQube and Docker Image.

99. How to Avoid Code Smells - A NDepend Tutorial

.NET developers can evaluate and visualize the codebase using the robust static analysis tool NDepend. It aids programmers in understanding the quality and main

100. How to Perform Formal Verification in Stratis C# Smart Contracts

It seems almost every week we hear of bugs and security incidents involving smart contracts that result in significant financial and reputation losses.

101. How to Tame the “Async Void” in C#

Most intermediate dotnet devs writing async await code in C# will come across async void at some point. Here's a creative solution for avoiding the headaches.

102. Importing, Exporting CSV and Excel XLSX in .NET C# Applications

Learn how to import and export CSV and Excel XLSX in .NET C# applications.

103. LINQ Query: Benefits of Deferred Execution

If you've spent much time around C# and .NET, it's likely that you will have come across LINQ (Language-Integrated Query), which allows you to use a range of powerful querying capabilities directly in the C# language.

104. Fully Covering .NET C# Console Application With Unit Tests

Best Practice Cover DotNet (.NET) CSharp (C#) with unit tests with Test Driven Development TDD Dependency Injection DI Inversion of Control IoC Containers

105. How to Use the Builder Pattern in C#

According to Gang of Four, a creational pattern “Builder” allows to separate and reuse a specific method to build something.

106. How to Build and Deploy C# Azure Functions using Multi-Stage Pipelines in Azure DevOps

Using YAML Build pipelines, we can define our entire build and release pipeline in a single file!

107. A Better Implementation of Enhanced Repository Pattern in .NET C#

Implement a better enhanced Repository Pattern in DotNet (.NET ) CSharp (C# ) following best practices Dependency Injection (DI) Inversion of Control (IoC)

108. The Basics of a Standard Type Inference Technique

Type inference is a common feature among mainstream programming languages. The functional ones, like ML and Haskell, are pioneers in exploring this programming paradigm where the declaration of a variable or a function may omit a type annotation. Today, even classic imperative languages such as C++ offer, to a certain extent, a kind of type inference.

109. The Programmer's Exam: Nullable Value Types

Recently nullable reference types have become trendy. Meanwhile, the good old nullable value types are still here and actively used. How well do you remember the nuances of working with them? Let's jog your memory or test your knowledge by reading this article. Examples of C# and IL code, references to the CLI specification, and CoreCLR code are provided. Let's start with an interesting case.

110. Sharing My Experience Attending MS Build 2020

This year was a special edition of MS Build; for obvious reasons, it was 100% virtual. I must say that I had my doubts at first, but I'm forced to admit that Microsoft nailed it. The experience was fantastic. I liked the personal schedule builder and the rebroadcast in 3 different timezones, to only name a few things. Microsoft even took the time to ship the conference's gear to all attendees, DIRECTLY to their doorstep, what a nice touch.


ASP.NET is an open-source server-side web application framework that was developed by Microsoft. It is mostly used for building dynamic websites and applications. It is free and a cross-platform framework. So, today we will be checking out the 11 most asked ASP.NET questions.

Thank you for checking out the 111 most read stories about Csharp on HackerNoon.

Visit the /Learn Repo to find the most read stories about any technology.