WilderMinds.MetaWeblog 5.1.2

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

// Install WilderMinds.MetaWeblog as a Cake Tool
#tool nuget:?package=WilderMinds.MetaWeblog&version=5.1.2                

MinimalApis.FluentValidation

Build and Test NuGet Nuget

To install the package:

dotnet add package MinimalApis.FluentValidation --version 1.0.0-beta

I'm a big fan of how Fluent Validation works, but as I was teaching Minimal APIs - it was tedious to add validation. In .NET 7, Microsoft introduced Endpoint Filters as a good solution.

Since then, I've been using endpoint filters to execute Fluent Validation's Validators. The result is this library. Assuming you've already used Fluent Validation to create your validators, you can simply call Validate to run the validation. For example:

app.MapPost("/test", (SomeModel model) => Results.Created("/test/1", model))
  .Validate<SomeModel>();

The call to Validate is an extension method that works on MapGroup, MapPost, MapPut, and MapDelete. (I don't prevent it's usage on MapGet or MapDelete, but they don't really make sense there.

Essentially, the call to validate will search for a Validator class for the provided type (TModel). If it doesn't find it, it will throw an exception. If it does find the validator, it will find find any parameters that match the provided type and validate it using the validator.

Finally, if there are any validation errors, it returns a ValidationProblem:

Results.ValidationProblem(...);

Note, the validators are called asynchronously.

You can also use the endpoint filter without the extension method if you like:

app.MapPut("/test", (SomeModel model) => Results.Ok(model))
  .AddEndpointFilter<ValidationEndpointFilter<SomeModel>>();

This might be useful if you need to subclass the ValidaitonEndpointFilter.

Please submit any issues and/or pull requests if you have questions or problems.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  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.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on WilderMinds.MetaWeblog:

Package Downloads
Articulate

A wonderful Blog engine built on Umbraco

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on WilderMinds.MetaWeblog:

Repository Stars
Shazwazza/Articulate
A wonderful Blog engine built on Umbraco
ADefWebserver/Blazor-Blogs
Simple blogging application written in Microsoft Server Side Blazor
Version Downloads Last updated
5.1.3 1,179 1/28/2024
5.1.2 92 1/28/2024
5.1.1 7,109 4/3/2023
5.1.0 2,080 12/19/2022
5.0.0 12,845 11/11/2020
3.1.1 814 10/25/2020
3.1.0 644 10/25/2020
2.0.1 19,039 10/18/2019
2.0.0 2,934 4/5/2018
1.2.3 10,982 11/8/2017
1.2.2 7,975 10/19/2017
1.2.1 950 10/13/2017
1.2.0 989 9/21/2017
1.1.0 1,267 6/2/2017
1.0.2 1,991 6/27/2016
1.0.1-rc2 1,091 6/5/2016
1.0.0-rc2 848 6/4/2016
0.4.0-beta 1,060 4/17/2016
0.3.1-beta 864 4/14/2016
0.3.0-beta 806 4/14/2016
0.2.6-beta 811 4/14/2016
0.2.5-beta 848 4/14/2016
0.2.4-beta 825 4/13/2016
0.2.3 1,072 4/13/2016
0.2.2 1,143 4/9/2016
0.2.1-beta 841 4/9/2016
0.1.1-beta 848 3/12/2016
0.1.0-beta 780 3/12/2016
0.0.3-beta 871 3/12/2016
0.0.2-beta 882 2/27/2016
0.0.1-alpha 1,199 2/27/2016