Url.Content publish bug

This commit is contained in:
Mike Phares 2023-02-24 11:18:35 -07:00
parent a25dc93610
commit f3d199cccb
3 changed files with 14 additions and 12 deletions

View File

@ -12,10 +12,9 @@ namespace OI.Metrology.Server.Controllers;
public class ExportController : Controller public class ExportController : Controller
{ {
private readonly string _ApiUrl;
private readonly ILogger _Logger; private readonly ILogger _Logger;
private readonly bool _IsTestDatabase;
private readonly AppSettings _AppSettings; private readonly AppSettings _AppSettings;
private readonly bool _IsTestDatabase;
private readonly IMetrologyRepository _MetrologyRepository; private readonly IMetrologyRepository _MetrologyRepository;
public ExportController(AppSettings appSettings, ILogger<ExportController> logger, IMetrologyRepository metrologyRepository) public ExportController(AppSettings appSettings, ILogger<ExportController> logger, IMetrologyRepository metrologyRepository)
@ -24,7 +23,6 @@ public class ExportController : Controller
_AppSettings = appSettings; _AppSettings = appSettings;
_MetrologyRepository = metrologyRepository; _MetrologyRepository = metrologyRepository;
_IsTestDatabase = appSettings.ConnectionString.Contains("test", StringComparison.InvariantCultureIgnoreCase); _IsTestDatabase = appSettings.ConnectionString.Contains("test", StringComparison.InvariantCultureIgnoreCase);
_ApiUrl = string.IsNullOrEmpty(appSettings.ApiUrl) ? Url.Content("~/") : appSettings.ApiUrl[0] == '~' ? Url.Content(appSettings.ApiUrl) : appSettings.ApiUrl;
} }
public override void OnActionExecuted(ActionExecutedContext context) public override void OnActionExecuted(ActionExecutedContext context)
@ -33,6 +31,8 @@ public class ExportController : Controller
ViewBag.IsTestDatabase = _IsTestDatabase; ViewBag.IsTestDatabase = _IsTestDatabase;
} }
private string GetApiUrl() => string.IsNullOrEmpty(_AppSettings.ApiUrl) ? Url.Content("~/") : _AppSettings.ApiUrl[0] == '~' ? Url.Content(_AppSettings.ApiUrl) : _AppSettings.ApiUrl;
[HttpGet] [HttpGet]
[Route("/Export")] [Route("/Export")]
public ActionResult Index() public ActionResult Index()
@ -44,7 +44,7 @@ public class ExportController : Controller
}; };
MonIn monIn = MonIn.GetInstance(); MonIn monIn = MonIn.GetInstance();
_ = monIn.SendStatus(_AppSettings.MonASite, _AppSettings.MonAResource, "Heartbeat", State.Up); _ = monIn.SendStatus(_AppSettings.MonASite, _AppSettings.MonAResource, "Heartbeat", State.Up);
ViewBag.ApiUrl = _ApiUrl; ViewBag.ApiUrl = GetApiUrl();
return View(model); return View(model);
} }
@ -85,7 +85,7 @@ public class ExportController : Controller
_ = monIn.SendStatus(_AppSettings.MonASite, _AppSettings.MonAResource, "Heartbeat", State.Warning); _ = monIn.SendStatus(_AppSettings.MonASite, _AppSettings.MonAResource, "Heartbeat", State.Warning);
} }
} }
ViewBag.ApiUrl = _ApiUrl; ViewBag.ApiUrl = GetApiUrl();
return View("Index", model); return View("Index", model);
} }

View File

@ -9,15 +9,15 @@ namespace OI.Metrology.Server.Controllers;
public class PagesController : Controller public class PagesController : Controller
{ {
private readonly string _ApiUrl;
private readonly bool _IsTestDatabase; private readonly bool _IsTestDatabase;
private readonly AppSettings _AppSettings;
private readonly IMetrologyRepository _MetrologyRepository; private readonly IMetrologyRepository _MetrologyRepository;
public PagesController(AppSettings appSettings, IMetrologyRepository metrologyRepository) public PagesController(AppSettings appSettings, IMetrologyRepository metrologyRepository)
{ {
_AppSettings=appSettings;
_MetrologyRepository = metrologyRepository; _MetrologyRepository = metrologyRepository;
_IsTestDatabase = appSettings.ConnectionString.Contains("test", StringComparison.InvariantCultureIgnoreCase); _IsTestDatabase = appSettings.ConnectionString.Contains("test", StringComparison.InvariantCultureIgnoreCase);
_ApiUrl = string.IsNullOrEmpty(appSettings.ApiUrl) ? Url.Content("~/") : appSettings.ApiUrl[0] == '~' ? Url.Content(appSettings.ApiUrl) : appSettings.ApiUrl;
} }
public override void OnActionExecuted(ActionExecutedContext context) public override void OnActionExecuted(ActionExecutedContext context)
@ -26,11 +26,13 @@ public class PagesController : Controller
ViewBag.IsTestDatabase = _IsTestDatabase; ViewBag.IsTestDatabase = _IsTestDatabase;
} }
private string GetApiUrl() => string.IsNullOrEmpty(_AppSettings.ApiUrl) ? Url.Content("~/") : _AppSettings.ApiUrl[0] == '~' ? Url.Content(_AppSettings.ApiUrl) : _AppSettings.ApiUrl;
[HttpGet] [HttpGet]
[Route("/")] [Route("/")]
public IActionResult Index() public IActionResult Index()
{ {
ViewBag.ApiUrl = _ApiUrl; ViewBag.ApiUrl = GetApiUrl();
return View("AwaitingDispo"); return View("AwaitingDispo");
} }
@ -39,7 +41,7 @@ public class PagesController : Controller
[Route("/Metrology/AwaitingDispo")] [Route("/Metrology/AwaitingDispo")]
public IActionResult AwaitingDispo() public IActionResult AwaitingDispo()
{ {
ViewBag.ApiUrl = _ApiUrl; ViewBag.ApiUrl = GetApiUrl();
return View(); return View();
} }
@ -58,7 +60,7 @@ public class PagesController : Controller
{ {
m.HeaderAttachmentID = _MetrologyRepository.GetHeaderAttachmentID(tooltypeid, headerid); m.HeaderAttachmentID = _MetrologyRepository.GetHeaderAttachmentID(tooltypeid, headerid);
} }
ViewBag.ApiUrl = _ApiUrl; ViewBag.ApiUrl = GetApiUrl();
return View(m); return View(m);
} }
@ -67,7 +69,7 @@ public class PagesController : Controller
[Route("/Metrology/RunHeaders")] [Route("/Metrology/RunHeaders")]
public IActionResult RunHeaders() public IActionResult RunHeaders()
{ {
ViewBag.ApiUrl = _ApiUrl; ViewBag.ApiUrl = GetApiUrl();
return View(); return View();
} }

View File

@ -56,10 +56,10 @@ public class Program
Serilog.ILogger log = Log.ForContext<Program>(); Serilog.ILogger log = Log.ForContext<Program>();
try try
{ {
_ = webApplicationBuilder.Services.AddMemoryCache();
_ = webApplicationBuilder.Services.Configure<ApiBehaviorOptions>(options => options.SuppressModelStateInvalidFilter = true); _ = webApplicationBuilder.Services.Configure<ApiBehaviorOptions>(options => options.SuppressModelStateInvalidFilter = true);
_ = webApplicationBuilder.Services.AddControllersWithViews(); _ = webApplicationBuilder.Services.AddControllersWithViews();
_ = webApplicationBuilder.Services.AddDistributedMemoryCache(); _ = webApplicationBuilder.Services.AddDistributedMemoryCache();
_ = webApplicationBuilder.Services.AddMemoryCache();
AppSettingsRepository appSettingsRepository = new(appSettings); AppSettingsRepository appSettingsRepository = new(appSettings);
SQLDbConnectionFactory sqlDbConnectionFactory = new(appSettings); SQLDbConnectionFactory sqlDbConnectionFactory = new(appSettings);