mirror of https://github.com/dapr/samples.git
47 lines
1.2 KiB
C#
47 lines
1.2 KiB
C#
using Dapr.Workflow;
|
|
using CheckoutServiceWorkflowSample.Activities;
|
|
using CheckoutServiceWorkflowSample.Workflows;
|
|
|
|
var builder = WebApplication.CreateBuilder(args);
|
|
|
|
builder.Services.AddControllers();
|
|
|
|
builder.Services.AddDaprClient();
|
|
|
|
builder.Services.AddDaprWorkflow(options =>
|
|
{
|
|
// Note that it's also possible to register a lambda function as the workflow
|
|
// or activity implementation instead of a class.
|
|
options.RegisterWorkflow<CheckoutWorkflow>();
|
|
|
|
// These are the activities that get invoked by the workflow(s).
|
|
options.RegisterActivity<NotifyActivity>();
|
|
options.RegisterActivity<CheckInventoryActivity>();
|
|
options.RegisterActivity<ProcessPaymentActivity>();
|
|
options.RegisterActivity<RefundPaymentActivity>();
|
|
options.RegisterActivity<UpdateInventoryActivity>();
|
|
});
|
|
|
|
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
|
builder.Services.AddEndpointsApiExplorer();
|
|
builder.Services.AddSwaggerGen();
|
|
|
|
var app = builder.Build();
|
|
|
|
// Configure the HTTP request pipeline.
|
|
if (app.Environment.IsDevelopment())
|
|
{
|
|
app.UseSwagger();
|
|
app.UseSwaggerUI();
|
|
}
|
|
|
|
app.UseHttpLogging();
|
|
|
|
app.UseHttpsRedirection();
|
|
|
|
app.UseAuthorization();
|
|
|
|
app.MapControllers();
|
|
|
|
app.Run();
|