![]() |
VOOZH | about |
dotnet add package Simplify.Web.Multipart --version 1.9.0
NuGet\Install-Package Simplify.Web.Multipart -Version 1.9.0
<PackageReference Include="Simplify.Web.Multipart" Version="1.9.0" />
<PackageVersion Include="Simplify.Web.Multipart" Version="1.9.0" />Directory.Packages.props
<PackageReference Include="Simplify.Web.Multipart" />Project file
paket add Simplify.Web.Multipart --version 1.9.0
#r "nuget: Simplify.Web.Multipart, 1.9.0"
#:package Simplify.Web.Multipart@1.9.0
#addin nuget:?package=Simplify.Web.Multipart&version=1.9.0Install as a Cake Addin
#tool nuget:?package=Simplify.Web.Multipart&version=1.9.0Install as a Cake Tool
👁 Nuget Version
👁 Nuget Download
👁 Build Package
👁 Libraries.io dependency status for latest release
👁 CodeFactor Grade
👁 Platform
Simplify.Web.Multipart is a package which provides multipart form view model and model binder for Simplify.Web web-framework.
public void Configuration(IApplicationBuilder app)
{
// ...existing code...
HttpModelHandler.RegisterModelBinder<HttpMultipartFormModelBinder>();
// ...existing code...
app.UseSimplifyWeb();
}
public void ConfigureServices(IServiceCollection services)
{
// ...existing code...
DIContainer.Current.RegisterHttpMultipartFormModelBinder();
// ...existing code...
}
public class MyController : ControllerAsync<MultipartViewModel>
{
public override async Task<ControllerResponse> Invoke()
{
await ReadModelAsync();
Model.Files;
}
}
Multipart files will be deserialized to the controller model on first model access
public class MyController : Controller<MultipartViewModel>
{
public override ControllerResponse Invoke()
{
Model.Files;
}
}
Instead of searching through the Parameters list manually, you can bind the multipart form parameters to a strongly typed model the same way as for a regular query/form/JSON request. Inherit your model from MultipartModel (which exposes Files) and add your own properties:
public class UploadModel : MultipartModel
{
public string Title { get; set; }
public int Count { get; set; }
}
The parameters are parsed into the model properties automatically (the same parser as Simplify.Web query/form binding is reused, so [BindProperty], [Exclude], [Format], IList<T> properties and validation attributes are all supported), while the uploaded files remain accessible via Model.Files:
public class MyController : Controller2<UploadModel>
{
public async Task<ControllerResponse> Invoke()
{
Model.Title; // bound from the "Title" multipart parameter
Model.Count; // bound from the "Count" multipart parameter
Model.Files; // uploaded files
}
}
The legacy MultipartViewModel (which exposes the raw Parameters list) still works as before and now also inherits from MultipartModel.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 netstandard2.1 is compatible. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.9.0 | 46 | 6/26/2026 |
| 1.8.0 | 547 | 6/5/2024 |
| 1.8.0-pre01 | 298 | 6/1/2024 |
| 1.7.2 | 360 | 8/26/2023 |
| 1.7.1 | 449 | 2/11/2023 |
| 1.7.0 | 494 | 1/10/2023 |
| 1.6.0 | 643 | 7/24/2022 |
| 1.5.0 | 659 | 6/4/2022 |
| 1.4.5 | 696 | 5/18/2022 |
| 1.4.4 | 692 | 3/13/2022 |
| 1.4.3 | 5,813 | 11/24/2021 |
| 1.4.2 | 655 | 4/26/2021 |
| 1.4.1 | 620 | 2/28/2021 |
| 1.4.0 | 703 | 1/5/2021 |
| 1.3.2 | 743 | 12/11/2020 |
| 1.3.1 | 777 | 10/26/2020 |
| 1.3.0 | 816 | 4/29/2020 |
| 1.2.0 | 871 | 12/22/2019 |
| 1.2.0-pre01 | 658 | 12/17/2019 |
| 1.1.0 | 847 | 10/21/2019 |