BetterCms.Module.Blog.Services.DefaultBlogMLService.ValidateModel C# (CSharp) Method

ValidateModel() private method

private ValidateModel ( BetterCms.Module.Blog.ViewModels.Blog.BlogPostViewModel blogPostModel, BlogMLPost blogML, BetterCms.Module.Blog.Models.BlogPostImportResult &failedResult ) : bool
blogPostModel BetterCms.Module.Blog.ViewModels.Blog.BlogPostViewModel
blogML BlogML.Xml.BlogMLPost
failedResult BetterCms.Module.Blog.Models.BlogPostImportResult
return bool
        private bool ValidateModel(BlogPostViewModel blogPostModel, BlogMLPost blogML, out BlogPostImportResult failedResult)
        {
            failedResult = null;

            if (string.IsNullOrWhiteSpace(blogML.ID))
            {
                failedResult = CreateFailedResult(blogML);
                failedResult.ErrorMessage = BlogGlobalization.ImportBlogPosts_ImportingBlogPostIdIsNotSet_Message;

                return false;
            }

            var validationContext = new ValidationContext(blogPostModel, null, null);
            var validationResults = new List<ValidationResult>();
            if (!Validator.TryValidateObject(blogPostModel, validationContext, validationResults, true)
                && validationResults.Count > 0)
            {
                failedResult = CreateFailedResult(blogML);
                failedResult.ErrorMessage = validationResults[0].ErrorMessage;

                return false;
            }

            try
            {
                pageService.ValidatePageUrl(blogPostModel.BlogUrl);
            }
            catch (Exception exc)
            {
                failedResult = CreateFailedResult(blogML);
                failedResult.ErrorMessage = exc.Message;

                return false;
            }

            return true;
        }