diff --git a/Directory.Packages.props b/Directory.Packages.props
index 3cac04452..ab2abddb2 100644
--- a/Directory.Packages.props
+++ b/Directory.Packages.props
@@ -21,7 +21,7 @@
-
+
diff --git a/src/Http/StartupStyleTarget/Internal/Generated/WolverineHandlers/GET_api_test.cs b/src/Http/StartupStyleTarget/Internal/Generated/WolverineHandlers/GET_api_test.cs
new file mode 100644
index 000000000..2da4f88fb
--- /dev/null
+++ b/src/Http/StartupStyleTarget/Internal/Generated/WolverineHandlers/GET_api_test.cs
@@ -0,0 +1,38 @@
+//
+#pragma warning disable
+using Microsoft.AspNetCore.Routing;
+using System;
+using System.Linq;
+using Wolverine.Http;
+
+namespace Internal.Generated.WolverineHandlers
+{
+ // START: GET_api_test
+ [global::System.CodeDom.Compiler.GeneratedCode("JasperFx", "1.0.0")]
+ public sealed class GET_api_test : Wolverine.Http.HttpHandler
+ {
+ private readonly Wolverine.Http.WolverineHttpOptions _wolverineHttpOptions;
+
+ public GET_api_test(Wolverine.Http.WolverineHttpOptions wolverineHttpOptions) : base(wolverineHttpOptions)
+ {
+ _wolverineHttpOptions = wolverineHttpOptions;
+ }
+
+
+
+ public override async System.Threading.Tasks.Task Handle(Microsoft.AspNetCore.Http.HttpContext httpContext)
+ {
+
+ // The actual HTTP request handler execution
+ var result_of_Get = StartupStyleTarget.TestEndpoint.Get();
+
+ await WriteString(httpContext, result_of_Get);
+ }
+
+ }
+
+ // END: GET_api_test
+
+
+}
+
diff --git a/src/Http/StartupStyleTarget/Internal/Generated/WolverineHandlers/POST_api_items.cs b/src/Http/StartupStyleTarget/Internal/Generated/WolverineHandlers/POST_api_items.cs
new file mode 100644
index 000000000..d62ce869f
--- /dev/null
+++ b/src/Http/StartupStyleTarget/Internal/Generated/WolverineHandlers/POST_api_items.cs
@@ -0,0 +1,41 @@
+//
+#pragma warning disable
+using Microsoft.AspNetCore.Routing;
+using System;
+using System.Linq;
+using Wolverine.Http;
+
+namespace Internal.Generated.WolverineHandlers
+{
+ // START: POST_api_items
+ [global::System.CodeDom.Compiler.GeneratedCode("JasperFx", "1.0.0")]
+ public sealed class POST_api_items : Wolverine.Http.HttpHandler
+ {
+ private readonly Wolverine.Http.WolverineHttpOptions _wolverineHttpOptions;
+
+ public POST_api_items(Wolverine.Http.WolverineHttpOptions wolverineHttpOptions) : base(wolverineHttpOptions)
+ {
+ _wolverineHttpOptions = wolverineHttpOptions;
+ }
+
+
+
+ public override async System.Threading.Tasks.Task Handle(Microsoft.AspNetCore.Http.HttpContext httpContext)
+ {
+ // Reading the request body via JSON deserialization
+ var (request, jsonContinue) = await ReadJsonAsync(httpContext);
+ if (jsonContinue == Wolverine.HandlerContinuation.Stop) return;
+
+ // The actual HTTP request handler execution
+ var result_of_Post = StartupStyleTarget.TestEndpoint.Post(request);
+
+ await WriteString(httpContext, result_of_Post);
+ }
+
+ }
+
+ // END: POST_api_items
+
+
+}
+
diff --git a/src/Http/StartupStyleTarget/Program.cs b/src/Http/StartupStyleTarget/Program.cs
new file mode 100644
index 000000000..07e800f36
--- /dev/null
+++ b/src/Http/StartupStyleTarget/Program.cs
@@ -0,0 +1,18 @@
+using JasperFx;
+using Wolverine;
+
+namespace StartupStyleTarget;
+
+public class Program
+{
+ public static Task Main(string[] args)
+ {
+ return Host.CreateDefaultBuilder(args)
+ .UseWolverine()
+ .ConfigureWebHostDefaults(webBuilder =>
+ {
+ webBuilder.UseStartup();
+ })
+ .RunJasperFxCommands(args);
+ }
+}
diff --git a/src/Http/StartupStyleTarget/Startup.cs b/src/Http/StartupStyleTarget/Startup.cs
new file mode 100644
index 000000000..cf9cf4f31
--- /dev/null
+++ b/src/Http/StartupStyleTarget/Startup.cs
@@ -0,0 +1,22 @@
+using Wolverine;
+using Wolverine.Http;
+
+namespace StartupStyleTarget;
+
+public class Startup
+{
+ public void ConfigureServices(IServiceCollection services)
+ {
+ services.AddWolverineHttp();
+ }
+
+ public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
+ {
+ app.UseRouting();
+
+ app.UseEndpoints(endpoints =>
+ {
+ endpoints.MapWolverineEndpoints();
+ });
+ }
+}
diff --git a/src/Http/StartupStyleTarget/StartupStyleTarget.csproj b/src/Http/StartupStyleTarget/StartupStyleTarget.csproj
new file mode 100644
index 000000000..a8512635e
--- /dev/null
+++ b/src/Http/StartupStyleTarget/StartupStyleTarget.csproj
@@ -0,0 +1,13 @@
+
+
+
+ net9.0
+ enable
+ enable
+
+
+
+
+
+
+
diff --git a/src/Http/StartupStyleTarget/TestEndpoint.cs b/src/Http/StartupStyleTarget/TestEndpoint.cs
new file mode 100644
index 000000000..ce0c6c6c3
--- /dev/null
+++ b/src/Http/StartupStyleTarget/TestEndpoint.cs
@@ -0,0 +1,20 @@
+using Wolverine.Http;
+
+namespace StartupStyleTarget;
+
+public static class TestEndpoint
+{
+ [WolverineGet("/api/test")]
+ public static string Get()
+ {
+ return "tested";
+ }
+
+ [WolverinePost("/api/items")]
+ public static string Post(CreateItemRequest request)
+ {
+ return $"Created: {request.Name}";
+ }
+}
+
+public record CreateItemRequest(string Name);