Table of Contents

Ploch.Common Documentation Hub

Welcome to the comprehensive documentation for Ploch.Common — a suite of .NET utility libraries that simplify everyday development tasks.

Documentation Guide

Resource Best For
Getting Started Guide New users — installation, first steps, common use cases
Quick Reference Experienced users — method signatures, cheat sheet
API Reference Complete method reference organised by namespace
Main README Full feature overview with in-depth examples

Library Documentation

Per-library documentation with overviews, key types, usage examples, and configuration guidance.

Core Foundation

Library Description Docs
Ploch.Common Extension methods for strings, collections, types, paths, guard clauses, randomisers common.md
Ploch.Common.Net9 .NET 9+ specific extensions (AppDomainTypesLoader) common-net9.md
Ploch.Common.DataAnnotations Custom validation attributes (RequiredNotDefaultDate) common-data-annotations.md
Ploch.Common.ObjectBuilder WMI/COM object-to-POCO conversion pipeline common-object-builder.md
Ploch.Common.Ardalis.Result Result-to-HTTP status code mapping extensions common-ardalis-result.md

Serialization

Library Description Docs
Ploch.Common.Serialization Abstract serialisation interfaces (ISerializer, IAsyncSerializer) common-serialization.md
Ploch.Common.Serialization.SystemTextJson System.Text.Json implementation (sync + async) common-serialization-system-text-json.md
Ploch.Common.Serialization.SystemTextJson.ExtensionsDependencyInjection DI registration for System.Text.Json serialiser common-serialization-system-text-json-di.md
Ploch.Common.Serialization.NewtonsoftJson Newtonsoft.Json implementation (sync only) common-serialization-newtonsoft-json.md
Ploch.Common.Serialization.NewtonsoftJson.ExtensionsDependencyInjection DI registration for Newtonsoft.Json serialiser common-serialization-newtonsoft-json-di.md

Dependency Injection

Library Description Docs
Ploch.Common.DependencyInjection ServicesBundle pattern — modular DI registration common-dependency-injection.md
Ploch.Common.DependencyInjection.Autofac Autofac container integration common-dependency-injection-autofac.md
Ploch.Common.DependencyInjection.Hosting IHostBuilder integration for ServicesBundle common-dependency-injection-hosting.md
Ploch.Common.Extensions.Configuration Configuration section binding extensions common-extensions-configuration.md
Ploch.Common.Dependencies Meta-package for shared dependencies common-dependencies.md

Web, API, and Applications

Library Description Docs
Ploch.Common.WebApi CRUD endpoint builders, AutoMapper integration, FastEndpoints common-webapi.md
Ploch.Common.Web Swagger/OpenAPI configuration helpers common-web.md
Ploch.Common.WebUI Razor/MVC page utilities (AppPage, SelectListHelper) common-webui.md
Ploch.Common.AppServices Application service abstractions (IUserInfoProvider) common-appservices.md
Ploch.Common.AppServices.Web HTTP context user info provider common-appservices-web.md
Ploch.Common.Apps Action handler framework (IActionHandler, ActionHandlerManager) common-apps.md
Ploch.Common.UseCases Use case abstractions (placeholder) common-usecases.md
Ploch.Common.NSwag NSwag operation name generator common-nswag.md
Ploch.Common.Maui MAUI MVVM bases, view discovery, font management common-maui.md
Ploch.Common.Windows Windows-specific utilities (placeholder) common-windows.md
Ploch.Common.Windows.DependencyInjection Windows DI registration (placeholder) common-windows-di.md

Testing Support

Library Description Docs
Ploch.TestingSupport Base testing utilities, test data attributes, FluentVerifier testing-support.md
Ploch.TestingSupport.XUnit3 xUnit v3 integration with custom data attributes and OS-conditional skipping testing-support-xunit3.md
Ploch.TestingSupport.XUnit3.AutoMoq AutoFixture + Moq integration for xUnit v3 testing-support-xunit3-automoq.md
Ploch.TestingSupport.FluentAssertions Custom FluentAssertions extensions testing-support-fluent-assertions.md
Ploch.TestingSupport.FluentAssertions.IOAbstractions IO Abstractions FluentAssertions extensions testing-support-fluent-assertions-io.md
Ploch.TestingSupport.MockConsoleApp Stub executable for process-launch integration tests testing-support-mock-console-app.md
Ploch.TestingSupport.Dependencies.MetaPackages Meta-package .nuspec repository testing-support-meta-packages.md
Ploch.TestingSupport.XUnit3.Dependencies xUnit v3 testing dependency meta-package testing-support-xunit3-dependencies.md
Ploch.TestingSupport.XUnit2.Dependencies xUnit v2 testing dependency meta-package (legacy) testing-support-xunit2-dependencies.md

Build Configuration

Resource Description Docs
Build Configuration (MSBuild) Directory.Build.props, Central Package Management, NBGV versioning common-msbuild.md

Quick Navigation by Feature

Feature Getting Started Quick Reference API Reference Library Docs
String operations Guide Cheat sheet API Ploch.Common
Collections Guide Cheat sheet API Ploch.Common
Guard clauses Guide Cheat sheet API Ploch.Common
Serialisation Guide API Serialization
Dependency injection Guide API DI
Testing Guide TestingSupport

External Resources


Back to Main README