private void ValidateImportParameters(string ruleSetName)
        {
            var validator = new ImportParametersValidator(DataContext);
            var result    = validator.Validate(Parameters, ruleSet: ruleSetName);

            if (!result.IsValid)
            {
                throw new ValidationException(result.Errors);
            }
        }
        public static ImportParametersValidator ValidateImportParameters(ImportParameters parameters, string ruleSetName, IDataContext context)
        {
            var validator = new ImportParametersValidator(context);
            var result    = validator.Validate(parameters, ruleSet: ruleSetName);

            if (!result.IsValid)
            {
                throw new ValidationException(result.Errors);
            }
            return(validator);
        }
        public async Task <ActionResult> ModalContent(ImportParameters parameters)
        {
            if (parameters.Action != ImportAction.Upload)
            {
                ImportParametersValidator
                .ValidateImportParameters(parameters, ImportParametersValidator.ImportQueueIdentifier, DataContext);
            }

            var importView = GetModelFromParameters(parameters).Result;

            return(PartialView(GetContentPartialViewName(parameters.Action), importView));
        }
        public async Task <ActionResult> ContextMenu(ImportParameters parameters)
        {
            ImportParametersValidator.ValidateImportParameters(parameters, ImportParametersValidator.ImportQueueIdentifier, DataContext);

            var importView = await ImportViewModel.GetModel(
                DataContext,
                new ImportQueueFilter(parameters.ImportQueueId.Value)
            {
                Action = ImportAction.ImportQueueItem
            });

            return(PartialView("_ContextMenu", importView));
        }