Advanced Search
Search Results
39 total results found
Consuming NET Core Background Service with DI
To properly consumes a background service from a controller or another service, it must be registered with DI. As well, since it’s a background service… it must be running… and probably a singleton. NOTE: If you are looking for how to generate an instance of...
Duplicating .NET Core DI
NOTE: If you are looking for how to access DI services, see this: HowTo Access DI Services Here are the steps to duplicating the .NET Dependency Injection process, to create a ServiceProvider instance. This is especially useful in unit testing, for classes an...
Unit Testing with IServiceProvider
When you create unit tests for class types that directly use DI to retrieve dependencies, you will need a way to give them a reference to a service provider (IServiceProvider). This is transparently done by the runtime.But, we have to mimic it for unit testin...
NET Core Background Services
NOTE: Refer to this page for how to register and consume a background service: Consuming NET Core Background Service with DI General Lots of the ceremony of a background service has been wrapped up and tested, in this class: BackgroundService_Base NOTE: As ...
Unit Testing Conventions
Suppress Async Warning Project-Wide Since we have several calls to base classes for diagnostics and such that are async, it's a good idea to standardize on all Test methods be async. The problem is that not every test method contains an awaited call. so, we ...
VS IDE Suppress Compiler Warnings Project Wide
There are some cases where it is necessary to suppress IDE compiler warnings that apply to the entire project. This can be warnings that occur several times across the source files. Or, it can be for a compiler warning that the project’s framework target is ...
#nullable Warning
If the compiler is giving you warnings about nullable reference types, then you may need to enable nullables in the csproj file. This can happen when you declare a public class property, like this: public TaskConfigBase? ConfigBase { get; set; } Sin...
NET Core Test API
We have a standing REST API with various endpoints for simulating different method types, return errors, and such. It’s Swagger page is, here: http://192.168.1.201:4250/swagger/index.html
Unit Testing for an Exception
Sometimes, a unit test needs to ensure a particular exception type occurs. Here’s how to check that a particular exception and message occurs. The catch is that, when executing code inside a unit test framework, such as MSUnit, any exception thrown by code i...
C# Unit Tests with Async Task Signature
When writing unit tests, it’s good to standardize as much as possible.This includes the method signature for each test cases, such as this: // Test_1_1_1 Describe the test... [TestMethod] public async Task Test_1_1_1() { // Do some testing... ... ...
Unit Test Cheat Sheet
Here’s a list of elements for unit testing in Visual Studio using MSTest. Documentation for Visual Studio Testing is here: GitHub - microsoft/vstest-docs: Documentation for the Visual Studio Test Platform. Necessary Packages The following packages are neces...
C# Unit Test Template Classes
If you are using MSTest as your testing framework, and want to leverage the test functionality from OGA.Testing.Lib, here are the minimal classes and structure you will need. For a cheat-sheet on MSTest framework usage, see this: Unit Test Cheat Sheet Depend...
.NET Framework Unit Testing Issues
Since we have some libraries that still output to NET Framework targets, some workarounds are required because of some design choices that have been made in the MSTest library and Test Explorer. MSTest Project Styles (SDK vs Non-SDK) NOTE: This only applies ...
.NET iOS Runtime Limitations
Here’s some notes on the limitations imposed by IOS for Xamarin and MAUI applications. These apply to both Xamarin and MAUI apps written for iOS. Basically, the iOS kernel prevents any application from generating dynamic code at runtime. So, any usage of JI...
PostgreSQL DotNet DataType Mapping
Here’s a list of .NET datatypes, and how best to store each one. .NET Datatype PostGreSQL DataType datetime (UTC) timestamp without time zone Guid uuid float real double double precision ...
PostgreSQL Bulk Insert
Here’s a means to insert multiple records in a single insert call, which is about 40 times faster than performing an explicit insert for each row. We will leverage the BeginBinaryImport method on the database connection class of the NPGSQL library. To make t...
Missing AspNetCore Nuget Packages
There are several aspects of an ASP Net Core web API that cannot be placed in a class library without a little extra care. This is because Microsoft decided to remove “many of the core assemblies” from nuget packages for the ASPNetCore, when Net Core 3.0 was p...
Ubuntu: How to Kill DotNet Runtime
Sometimes, a a dotnet runtime closes without releasing a listening port. This will prevent it from restarting, because the port is already in use. While running the dotnet run if you stop the server using ctr + z then it Ctrl+z sends the SIGTSTP (Signal T...
HowTo Run DotNet Core App as Standalone
How to startup a net core application and specify the listening IP address and port: exename.exe run --urls "http://192.168.1.110:6000"