From 80b87cad632ed27bf420bdfd25896308d3544d1a Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Sat, 4 Apr 2026 10:15:22 +0200 Subject: [PATCH] Aggiunta version API --- MP.IOC/Controllers/BenchController.cs | 12 ++++++++++++ MP.IOC/Controllers/IOBController.cs | 12 ++++++++++++ MP.IOC/Program.cs | 26 +++++++++++++++++++++++--- MP.IOC/appsettings.json | 4 +++- 4 files changed, 50 insertions(+), 4 deletions(-) diff --git a/MP.IOC/Controllers/BenchController.cs b/MP.IOC/Controllers/BenchController.cs index 11501856..cf12f332 100644 --- a/MP.IOC/Controllers/BenchController.cs +++ b/MP.IOC/Controllers/BenchController.cs @@ -3,6 +3,7 @@ using MP.Data; using MP.IOC.Data; using NLog; using System.Diagnostics; +using System.Reflection; namespace MP.IOC.Controllers { @@ -359,6 +360,17 @@ namespace MP.IOC.Controllers return answ; } + [HttpGet("version")] + public string version() + { + var version = Assembly + .GetExecutingAssembly() + .GetName() + .Version? + .ToString() ?? "unknown"; + + return version; + } #endregion Public Methods #region Protected Properties diff --git a/MP.IOC/Controllers/IOBController.cs b/MP.IOC/Controllers/IOBController.cs index c20abae4..78bfdae2 100644 --- a/MP.IOC/Controllers/IOBController.cs +++ b/MP.IOC/Controllers/IOBController.cs @@ -2,6 +2,7 @@ using MP.IOC.Data; using Newtonsoft.Json; using NLog; +using System.Reflection; namespace MP.IOC.Controllers { @@ -2229,6 +2230,17 @@ namespace MP.IOC.Controllers // return answ; //} + [HttpGet("version")] + public string version() + { + var version = Assembly + .GetExecutingAssembly() + .GetName() + .Version? + .ToString() ?? "unknown"; + + return version; + } #endregion Public Methods #region Private Methods diff --git a/MP.IOC/Program.cs b/MP.IOC/Program.cs index 11c5e0b6..1d6a619d 100644 --- a/MP.IOC/Program.cs +++ b/MP.IOC/Program.cs @@ -1,17 +1,24 @@ using Microsoft.AspNetCore.Http.Extensions; +using Microsoft.OpenApi.Models; using MP.IOC.Data; using MP.IOC.Services; using NLog; using NLog.Web; using StackExchange.Redis; using System.Net; +using System.Reflection; var builder = WebApplication.CreateBuilder(args); +// recupero env corrente +var env = builder.Environment; var logger = LogManager.Setup() .LoadConfigurationFromAppSettings() .GetCurrentClassLogger(); -logger.Info("Program.cs: startup"); + +var assemblyVersion = Assembly.GetExecutingAssembly().GetName().Version?.ToString(); +logger.Info($"MP.IOC | Program.cs: startup | v.{assemblyVersion}"); +logger.Info($"Current ASPNETCORE_ENVIRONMENT: {env.EnvironmentName}"); // Config setup ConfigurationManager configuration = builder.Configuration; @@ -56,7 +63,16 @@ builder.Services.AddHostedService(); builder.Services.AddControllers(); // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); -builder.Services.AddSwaggerGen(); +//builder.Services.AddSwaggerGen(); +builder.Services.AddSwaggerGen(c => +{ + c.SwaggerDoc("v1", new OpenApiInfo + { + Title = "EgaWare's Mapo Rest API", + Version = $"v1 | {assemblyVersion}", + Description = $"API documentation for v1 | AssemblyVersion {assemblyVersion}" + }); +}); // avvio oggetto shared x redis... var redisMux = ConnectionMultiplexer.Connect(connStringRedis); @@ -127,7 +143,11 @@ logger.Info("App: route Mapped"); if (app.Environment.IsDevelopment() || app.Environment.IsStaging()) { app.UseSwagger(); - app.UseSwaggerUI(); + //app.UseSwaggerUI(); + app.UseSwaggerUI(c => + { + c.SwaggerEndpoint($"{baseUrl}swagger/v1/swagger.json", "EgalWare's MAPO API v1"); + }); } logger.Info("Added swagger"); diff --git a/MP.IOC/appsettings.json b/MP.IOC/appsettings.json index b65e201d..042c4fef 100644 --- a/MP.IOC/appsettings.json +++ b/MP.IOC/appsettings.json @@ -2,7 +2,9 @@ "Logging": { "LogLevel": { "Default": "Information", - "Microsoft.AspNetCore": "Warning" + "Microsoft.AspNetCore": "Warning", + "Microsoft.WebTools.BrowserLink.Net.BrowserLinkMiddleware": "None", + "Microsoft.AspNetCore.Watch.BrowserRefresh.BrowserRefreshMiddleware": "None" } }, "NLog": {