Plainscope.Core 2.1.29

dotnet add package Plainscope.Core --version 2.1.29
                    
NuGet\Install-Package Plainscope.Core -Version 2.1.29
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Plainscope.Core" Version="2.1.29" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Plainscope.Core" Version="2.1.29" />
                    
Directory.Packages.props
<PackageReference Include="Plainscope.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Plainscope.Core --version 2.1.29
                    
#r "nuget: Plainscope.Core, 2.1.29"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Plainscope.Core@2.1.29
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Plainscope.Core&version=2.1.29
                    
Install as a Cake Addin
#tool nuget:?package=Plainscope.Core&version=2.1.29
                    
Install as a Cake Tool

Plainscope.Core

This is a cross platform helper library containing a bunch of helper code that are shared across multiple projects. I hope it helps you as well. Enjoy!

Features

Configuration

Classes and objects used in the appsettings.json file:

{
    "Settings": {
        "Events" : [
            {
                "Entity": "<Entity Type>",
                "CreateCode": 1000,
                "UpdateCode": 1001,
                "DeleteCode": 1002
            }
        ],
        "Identity": {
            "AnonymousUserName": "anonymous",
            "AnonymousFullName": "Anonymous User",
            "AuthenticationScheme": "Bearer",
            "AuthenticationType": "Claims",
            "Token": {
                "SecretKey": "5A7134743777217A25432646294A404E635266...",
                "Issuer": "https://localhost:5002",
                "Audience": "https://localhost:5002"
            }
        }
    }
}

Constants

Constants shared across multiple projects:

Constants.ContentTypes.Json = "application/json"
Constants.Environments.Testing = "Testing"

Data

Interfaces used for domain objects for data persistence.

  • Plainscope.Data.IAuditable: Interface used for entities that need an audit trail.
  • Plainscope.Data.IBadge: Interface used for objects that track a user's identity information.
  • Plainscope.Data.IEntity: Interface used for data entities.

Extensions

Extensions for dynamically generating Linq expressions:

  • ParameterExpression.ToEqualExpression(): Creates a BinaryExpression that represents an equality comparison. entity.ParentProperty.ChildProperty == @value.
  • ParameterExpression.ToAndAlsoExpression() : Creates a BinaryExpression that represents an equality comparison. entity.PropertyName == @value && entity.OtherProperty == @value.
  • Type.ToParameterExpression() : Creates a ParameterExpression node that can be used to identify a parameter or a variable in an expression tree.
  • Type.ToUnaryExpression() : Creates a UnaryExpression that represents a type conversion.

Models

Generic model classes:

  • BatchModel : The object used when submitting batch processes.
  • ResultModel : The object used when receiving operation results.
  • ValidationErrorModel : The object used when receiving operation errors.
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Plainscope.Core:

Package Downloads
Plainscope.Services.Core

Contains classes common to all services projects.

Plainscope.Services.UnitTests

Contains classes common to all services unit test projects.

Plainscope.Tests.Core

Contains classes common to all test projects.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.1.29 762 1/29/2025
2.0.28 147 1/28/2025
1.1.25 460 11/29/2023
1.0.24 535 10/30/2023
1.0.23-beta 131 10/30/2023
1.0.22 936 5/5/2023
1.0.21 277 5/5/2023
1.0.20 233 5/5/2023
1.0.19 240 5/5/2023
1.0.18 509 5/1/2023
1.0.17 390 5/1/2023
1.0.15 263 5/1/2023
1.0.15-beta 184 5/1/2023
0.1.13-beta 187 4/30/2023
0.1.12-beta 228 4/30/2023
0.1.10-beta 213 4/30/2023