Olá, criei um projeto em asp.net mvc 5 com sites multiplos para o cliente escolher o seu modelo de layout.
Porém estou com um problema de "processamento" ao meu ver e gostaria de otimizar isso.
Todo método do meu controller estou precisando chamar uma ViewModel nela ele Lê o cliente e todas informações do web site do cliente, gostaria de saber se isso é realmente necessário ou tem uma forma melhor de ser feito? Vou postar um exemplo:
ViewModel:
public HomeViewModel(string website)
{
var uow = new UnitOfWork();
var contratante = uow.ClienteRepositorio.Buscar(c => c.WebSite == website);
Tema = contratante.Registro;
IdCliente = cliente.Id;
MetaKeywords = "teste metakey";
MetaDescription = " teste metaDescription";
FavIcon = "caminhodafoto";
[demais campos]
}
Controller
1º método
public ActionResult Index()
{
var dominio = Tema.TemaAtual();
homeViewModel = LerDominio(dominio);
return View("~/Views/Tema/"+homeViewModel.Tema+"/Home/Index.cshtml", homeViewModel);
}
2º método
public ActionResult Servicos()
{
var dominio = Tema.TemaAtual();
homeViewModel = LerDominio(dominio);
return View("~/Views/Tema/"+homeViewModel.Tema+"/Home/Servicos.cshtml");
}
Agradeço a ajuda de vcs