Westwind.AspNetCore 3.6.3

There is a newer version of this package available.
See the version list below for details.
dotnet add package Westwind.AspNetCore --version 3.6.3
NuGet\Install-Package Westwind.AspNetCore -Version 3.6.3
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="Westwind.AspNetCore" Version="3.6.3" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Westwind.AspNetCore --version 3.6.3
#r "nuget: Westwind.AspNetCore, 3.6.3"
#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.
// Install Westwind.AspNetCore as a Cake Addin
#addin nuget:?package=Westwind.AspNetCore&version=3.6.3

// Install Westwind.AspNetCore as a Cake Tool
#tool nuget:?package=Westwind.AspNetCore&version=3.6.3

Westwind.AspNetCore

Utility library providing useful helpers, formatters and extensions for ASP.NET Core

NuGet Pre Release

This is a small helper package that provides a number of small helper and extension classes that facilitate common operations in ASP.NET Core and MVC applications.

Westwind.AspnetCore.Markdown has moved

The Westwind.AspnetCore.Markdown sub-component has moved to its own repository:

Westwind.AspNetCore.Markdown on GitHub

Installation

You can install the package from NuGet in Visual Studio:

Westwind.AspnetCore Package
PM> install-package westwind.aspnetcore

or the dotnet command line:

dotnet add package westwind.aspnetcore
Westwind.AspnetCore.Markdown Package

There is also a separate package for Westwind.AspNetCore.Markdown which provides a Markdown TagHelper and Markdown Parsing services:

PM> install-package westwind.aspnetcore.markdown

or the dotnet command line:

dotnet add package westwind.aspnetcore.markdown

Features

MVC Functionality
  • BaseController and BaseViewModel implementation
    A common base controller class that adds support for an auto-initialized BaseViewModel from which other VMs can inherit. Allows for automatic initialization of common features like ErrorDisplay and Base View models.

  • ViewRenderer
    Render Razor/MVC view output to a string using a controller context.

  • FormVariable Binder
    Request.Form unbind routine that allows you to unbind form variables into an existing object only updating properties that are are available in the request form context.

  • AppUser ClaimsPrincipal and Cookie Authentication Helper
    A AppUser class that wraps a ClaimsPrincipal and makes it easier to add and retrieve claims as well as easily login and logout all from a single helper object.

  • Bootstrap Alert ErrorDisplay Tag Helper and Controller Support Feature
    In most MVC applications you need some sort of error display and this ErrorDisplay TagHelper makes it quick easy to display an Alert box from a custom ErrorDisplayModel input. Helper methods like ShowError() or ShowInfo() on BaseViewModel make it very easy to display error and informational messages on pages.

Api Functionality
  • Api Error Handling Filter
    A custom API error filter implementation that returns API responses on exceptions. Also provides a standardized ApiExecption class that can be used to force responses with specific HTTP response codes.

  • Api Base Response Object
    ApiResponse base class that can be used to return consistent API results that include error status, error message, status code as well as the actual data. Both typed and untyped versions.

  • RawRequest Body String Formatter
    API formatter that allows for receiving raw non-json content to string and byte[] parameters, which otherwise isn't supported by MVC's API implementation. More info in blog post.

  • User Token Manager
    A database driven token manager that can create, store, validate and manage the life time of short lived generated tokens. Useful for creating tokens that are assigned after an initial authentication and then used for API access.

General ASP.NET Core
  • Custom Headers Middleware
    Allows adding and removing of HTTP headers to every request using middleware configuration.

  • HttpRequest Extensions

    • GetBodyStringAsync() and GetRawBodyBytesAsync() - retrieve raw non-JSON content
    • MapPath() - Map virtual path to physical path on disk
    • Params() - Return an item from Form, Query or Session collections.
  • DataProtector Wrapper
    Helper to make it easier to use the DataProtector API to create secure tokens.

  • UserState Helper
    The UserState object greatly simplifies working with auth 'cached' token data more easily by storing a single value in a user claim or forms auth ticket that can be easily restored into an typed object. The class supports easily serialization and auto-loading from Claims. Can be extended by subclassing and adding your own values.

License

The Westwind.Web.MarkdownControl library is an open source product licensed under:

All source code is © West Wind Technologies, regardless of changes made to them. Any source code modifications must leave the original copyright code headers intact if present.

There's no charge to use, integrate or modify the code for this project. You are free to use it in personal, commercial, government and any other type of application and you are free to modify the code for use in your own projects.

Give back

If you find this library useful, consider making a small donation:

<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=BA3NHHFHTMXD8" title="Find this library useful? Consider making a small donation." alt="Make Donation" style="text-decoration: none;"> <img src="https://weblog.west-wind.com/images/donation.png" /> </a>

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
.NET Core netcoreapp3.1 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Westwind.AspNetCore:

Package Downloads
Tyle_Evmos

Package Description

Tyle.Nft

Package Description

TyleCSC

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.0.2 223 2/17/2024
4.0.1 93 2/15/2024
4.0.0 101 2/10/2024
3.20.0 82 2/10/2024
3.11.0 88 2/6/2024
3.9.2 83 1/19/2024
3.9.0 200 11/30/2023
3.8.7 821 8/15/2023
3.8.5 507 6/10/2023
3.7.0 3,395 12/12/2022
3.6.3 652 10/6/2022
3.6.2 471 9/18/2022
3.6.0 432 9/11/2022
3.5.5 1,841 7/6/2022
3.5.2 621 6/19/2022
3.5.1 444 6/17/2022
3.4.5 11,689 8/27/2021
3.4.3 793 3/9/2021
3.4.2 402 3/8/2021
3.4.0 390 2/12/2021
3.2.15 5,290 2/25/2020
3.2.9 1,644 6/6/2019
3.2.8 766 5/2/2019
3.2.1 82 2/10/2024
3.2.0 1,740 12/7/2018
3.0.38 1,013 9/6/2018
3.0.30 931 9/2/2018
3.0.29 1,042 7/23/2018
3.0.18 1,124 4/5/2018
3.0.15 1,000 2/18/2018
3.0.14 1,062 2/14/2018
3.0.12 1,107 1/28/2018
3.0.11 1,055 1/26/2018
0.1.0 1,019 10/4/2017