public static Models.ValidationResult ValidateSite(Models.Site site, bool isNewSite)
{
var validationResult = new Models.ValidationResult();
if (string.IsNullOrEmpty(site.Name))
{
validationResult.IsValid = false;
validationResult.Message = "Site Name Is Not Valid";
return validationResult;
}
if (isNewSite)
{
using (var uow = new DAL.UnitOfWork())
{
if (uow.SiteRepository.Exists(h => h.Name == site.Name))
{
validationResult.IsValid = false;
validationResult.Message = "This Site Already Exists";
return validationResult;
}
}
}
else
{
using (var uow = new DAL.UnitOfWork())
{
var originalSite = uow.SiteRepository.GetById(site.Id);
if (originalSite.Name != site.Name)
{
if (uow.SiteRepository.Exists(h => h.Name == site.Name))
{
validationResult.IsValid = false;
validationResult.Message = "This Site Already Exists";
return validationResult;
}
}
}
}
return validationResult;
}