• About
  • Privacy Policy
  • Utilities
Darchuk.NET

C#

Colorful Console App

February 15, 2019 by Robert Leave a Comment

In a C# console application, you can change the color of the text emitted by Console.WriteLine by setting Console.ForegroundColor and Console.BackgroundColor.  It’s pretty straightforward, but if you want to make the output have different colors to denote different things, its kind of cumbersome to have to set the color and then write the output, and … [Read more…]

Posted in: C#, Generic Tagged: C#, Colors, Console, Csharp, Terminal

Waiting for a keypress asynchronously in a C# console app

February 8, 2019 by Robert 2 Comments

This one’s kind of specific, but sometimes when you’re writing a console app that does a lot of asynchronous stuff, and you want to cancel it at any time by pressing escape.  via GIPHY However, Console.ReadKey is blocking… so that’s not super great. CancellationToken First, make use of the cancellation tokens.  I’ve talked about them … [Read more…]

Posted in: .NET Core, Asynchronous, C#, Concurrency Tagged: async, C#

Getting Nested Classes With Reflection

February 1, 2019 by Robert Leave a Comment

Are you tired of feeling like your code is meaningless?  Sick of people not referring to your code as “black magic,” or struggling to gain recognition from your boss for writing sufficiently obfuscated code?If you’ve answered “yes” to any of the above, Reflection might be for you! via GIPHY Reflection I’ve talked about reflection a … [Read more…]

Posted in: C#, Reflection, Uncategorized, Unit Testing Tagged: C#, Reflection, Testing

C#–Writing Enum extension methods

January 25, 2019 by Robert 1 Comment

Sometimes I find myself wanting a quick way to compare an enum with a list of other enums…  Basically, if the enum is one of these, then do this.  It’s pretty easy to do with Linq, but if you want to do it a few times in a few other places, it pays to be … [Read more…]

Posted in: C#, Generic Tagged: C#, enum, equality, extension

C# Setting Socket Keep-Alive

January 4, 2019 by Robert 4 Comments

TCP is a good choice for communication if you want to know that your message got to where it was going, as opposed to UDP where the communication is fire-and-forget. When a message is sent, the recipient sends an acknowledgement that the message arrived successfully.  If you don’t get an acknowledgement, you have a pretty … [Read more…]

Posted in: C# Tagged: C#, KeepAlive, Networking, Socket, TCP, TcpClient

CORS in ASP .NET Core 2.2

December 21, 2018 by Robert Leave a Comment

Recently my team upgraded to .NET Core 2.2.  We have an API that needs to be accessed from an Angular project living in a different domain, so we had CORS enabled this way: Disclaimer: this is an intranet application – so it is only accessible inside of a corporate firewall, making it more acceptable to … [Read more…]

Posted in: .NET Core, ASP.NET, C#, Security, Web API, Web Development Tagged: .NET Core, ASP.NET, C#, CORS, NETCORE, Security, WebAPI

Adding a CancellationToken to TcpListener.AcceptTcpClientAsync

November 9, 2018 by Robert 7 Comments

A TcpListener opens a socket using TCP to listen for incoming connection requests.  You can use AcceptTcpClientAsync to asynchronously get a TcpClient object, which you can then use to send and receive messages on the connection. AcceptTcpClientAsync Waits forever to get a connection.  This is pretty much what you want most of the time… after … [Read more…]

Posted in: .NET Core, Asynchronous, C# Tagged: async, await, C#, Cancel, CancellationToken, TcpListener

CancellationTokens

November 2, 2018 by Robert 1 Comment

In C# asynchronous programming, a CancellationToken allows you to stop a Task.  This is especially useful if you have many Tasks running and want to gracefully shut down the program, or if you want to add a timeout to a Task. via GIPHY Creation CancellationTokens are created from a CancellationTokenSource. via GIPHY Usage The token … [Read more…]

Posted in: .NET Core, Asynchronous, C#, Concurrency Tagged: async, await, C#, CancellationToken, CancellationTokenSource, Concurrency, OperationCanceledException, TaskCanceledException

C# and Mongo–FindOneAndUpdateAsync

August 31, 2018 by Robert Leave a Comment

Recently I’ve been working on adding SignalR to a web application, and that means broadcasting records to clients after they’ve been updated.  I could make different methods for each update type and react accordingly, but I’m pretty lazy so I decided to just make one “update” method that receives the entire record (and replaces it … [Read more…]

Posted in: .NET Core, Asynchronous, C#, Mongo Tagged: C#, Database, Document, FindOneAndUpdateAsync, Mongo, Record, UpdateOneAsync

C# Unit Testing object equality without implementing .Equals

August 24, 2018 by Robert Leave a Comment

Recently I was trying to write a unit test testing to see if one object was equal to another.  The objects themselves were simple, just a collection of built-in types, so it should be easy to test. .Equals However, since I didn’t implement .Equals, C# doesn’t natively know how to check if the objects are … [Read more…]

Posted in: C#, Reflection, Unit Testing Tagged: C#, Csharp, Equals, PixieDust, Reflection, Testing, UnitTesting
« Previous 1 2 3 4 … 6 Next »

Recent Posts

  • Allowing trailing JSON commas in ASP.NET Core 3
  • YADNC3JSG–Yet Another .NET Core 3.0 JSON Serializer Gotcha
  • Logging in a .NET Core 3 SignalR client
  • .NET Core 3 unit testing project sdk
  • .NET Core 3.0 Upgrade–New JSON Serializer Gotchas

Recent Comments

  1. Robert on C# Setting Socket Keep-Alive
  2. Oliver Schramm on C# Setting Socket Keep-Alive
  3. John Anderson on Waiting for a keypress asynchronously in a C# console app
  4. Ronald Garlit on .NET Core 3 unit testing project sdk
  5. Ronald Garlit on .NET Core 3 unit testing project sdk

Copyright © 2025 Darchuk.NET.

Omega WordPress Theme by ThemeHall