FlowDance.Client.AspNetCore
1.0.12-alpha
This is a prerelease version of FlowDance.Client.AspNetCore.
dotnet add package FlowDance.Client.AspNetCore --version 1.0.12-alpha
NuGet\Install-Package FlowDance.Client.AspNetCore -Version 1.0.12-alpha
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="FlowDance.Client.AspNetCore" Version="1.0.12-alpha" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FlowDance.Client.AspNetCore --version 1.0.12-alpha
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: FlowDance.Client.AspNetCore, 1.0.12-alpha"
#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 FlowDance.Client.AspNetCore as a Cake Addin
#addin nuget:?package=FlowDance.Client.AspNetCore&version=1.0.12-alpha&prerelease
// Install FlowDance.Client.AspNetCore as a Cake Tool
#tool nuget:?package=FlowDance.Client.AspNetCore&version=1.0.12-alpha&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
FlowDance.Client.AspNetCore
FlowDance.Client.AspNetCore contains a ActionFilterAttribute (CompensationSpanAttribute) that makes iy easy to start/join a CompensationSpan from a Controller-class.
Don't forget to add config to appsettings.json!
{
"StorageProviderType": "RabbitMqStorage",
"RabbitMqConnection": {
"HostName": "localhost",
"Username": "guest",
"Password": "guest",
"VirtualHost": "/"
}
}
To start a new 'transaction'.
[CompensationSpan(CompensatingActionUrl = "http://localhost:5112/api/Compensating/compensate", CompensationSpanOption = CompensationSpanOption.RequiresNew)]
[HttpPost("booktrip")]
public async Task<IActionResult> BookTrip([FromBody] Trip trip)
{
// Access the CompensationSpan instance from the ActionFilter
var compensationSpan = HttpContext.Items["CompensationSpan"] as CompensationSpan;
....
return Ok(trip);
}
To "join" a existing 'transaction'.
[CompensationSpan(CompensatingActionUrl = "http://localhost:5043/api/Compensating/compensate")]
[HttpPost("bookcar")]
public async Task<IActionResult> BookCar([FromBody] Car car)
{
// Access the CompensationSpan instance from the ActionFilter
var compensationSpan = HttpContext.Items["CompensationSpan"] as CompensationSpan;
// Book a Hotel
await _hotelService.BookHotel(car.PassportNumber, car.TripId, compensationSpan.TraceId);
return Ok();
}
Product | Versions 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- Newtonsoft.Json (>= 13.0.3)
- RabbitMQ.Client (>= 6.8.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.12-alpha | 20 | 7/3/2024 |
1.0.11-alpha | 42 | 6/19/2024 |
1.0.10-alpha | 35 | 6/17/2024 |