Files
GPW/HOME/Controllers/HomeController.cs
T
2017-04-27 16:12:28 +02:00

71 lines
3.0 KiB
C#

using HOME.Models;
using NLog;
using System;
using System.Linq;
using System.Web.Configuration;
using System.Web.Mvc;
namespace HOME.Controllers
{
public class HomeController : Controller
{
public Logger lg = LogManager.GetCurrentClassLogger();
public ActionResult Index()
{
ViewBag.Title = "GPW";
int logLevel = 0;
try
{
logLevel = Convert.ToInt32(WebConfigurationManager.AppSettings["_logLevel"]);
}
catch
{ }
ViewBag.Environment = WebConfigurationManager.AppSettings["Environment"];
if (logLevel > 5) lg.Info("Environment = " + ViewBag.Environment);
using (var ctx = new GPWEntities())
{
if (logLevel > 5) lg.Info(string.Format("Inizio connessione DB con Entity Framework, connString:{0}{1}", Environment.NewLine, ctx.Database.Connection.ConnectionString));
try
{
// esegue stored procedure come function, recuperando chiave desiderata...
var keyVal = ctx.stp_AKV_getByKey("Environment").ToList<AnagKeyValue>();
// imposto URL dei vari siti
ViewBag.UrlAdmin = ctx.stp_AKV_getByKey("UrlAdmin").ToList<AnagKeyValue>()[0].valString;
ViewBag.UrlBCode = ctx.stp_AKV_getByKey("UrlBCode").ToList<AnagKeyValue>()[0].valString;
ViewBag.UrlSmart = ctx.stp_AKV_getByKey("UrlSmart").ToList<AnagKeyValue>()[0].valString;
ViewBag.UrlWrkLg = ctx.stp_AKV_getByKey("UrlWrkLg").ToList<AnagKeyValue>()[0].valString;
if (logLevel > 5) lg.Info("DB: UrlAdmin = " + ViewBag.UrlAdmin);
}
catch (Exception exc)
{
lg.Error(string.Format("Errore in decodifica valori da conf DB:{0}{1}", Environment.NewLine, exc));
// in questo caso leggo da web.config
ViewBag.UrlAdmin = WebConfigurationManager.AppSettings["UrlAdmin"]; //"../ADMIN";
ViewBag.UrlBCode = WebConfigurationManager.AppSettings["UrlBCode"]; //"../BCODE";
ViewBag.UrlSmart = WebConfigurationManager.AppSettings["UrlSmart"]; //"../SMART";
ViewBag.UrlWrkLg = WebConfigurationManager.AppSettings["UrlWrkLg"]; //"../WRKLG";
if (logLevel > 5) lg.Info("Web.config: UrlAdmin = " + ViewBag.UrlAdmin);
}
}
return View();
}
public ActionResult About()
{
ViewBag.Title = "GPW";
ViewBag.Message = "GPW è la suire di gestione del rilevamento presenze e contabilizzazione attività a progetto di Steamware";
return View();
}
public ActionResult Contact()
{
ViewBag.Title = "GPW";
ViewBag.Message = "Per contattarci";
return View();
}
}
}