Beispiel #1
0
        /// <summary>
        /// The deserialize EDUGAME questions.
        /// </summary>
        /// <param name="format">
        /// The format.
        /// </param>
        /// <param name="filePath">
        /// The file path.
        /// </param>
        /// <param name="schemaPath">
        /// The schema path.
        /// </param>
        /// <returns>
        /// The <see cref="EdugameQuestions"/>.
        /// </returns>
        /// <exception cref="FileNotFoundException">
        /// File not found
        /// </exception>
        /// <exception cref="SerializationException">
        /// Serialized exception
        /// </exception>
        /// <exception cref="ArgumentException">
        /// Argument exception
        /// </exception>
        private EdugameQuestions DeserializeEdugameQuestions(FormatsEnum format, string filePath, string schemaPath)
        {
            if (!System.IO.File.Exists(filePath) || !System.IO.File.Exists(schemaPath))
            {
                throw new FileNotFoundException();
            }

            string rawData = System.IO.File.ReadAllText(filePath);
            string data    = format == FormatsEnum.WebEx ? HttpUtility.HtmlDecode(rawData) : rawData;

            string validationError;

            if (!XsdValidator.ValidateXmlAgainsXsd(data, schemaPath, out validationError))
            {
                throw new SerializationException(validationError);
            }

            EdugameQuestions questions = this.ImportFromString(data, format);

            if (string.IsNullOrEmpty(data) || questions == null || questions.Questions == null ||
                questions.Questions.Count == 0)
            {
                throw new ArgumentException();
            }

            return(questions);
        }
Beispiel #2
0
        /// <summary>
        /// The validate against schema.
        /// </summary>
        /// <param name="xml">
        /// The xml.
        /// </param>
        /// <returns>
        /// The <see cref="bool"/>.
        /// </returns>
        private bool ValidateAgainstVCFProfileSchema(string xml)
        {
            var xsdFileName = HttpContext.Current.Server.MapPath(Content.xsd.vcfProfile_xsd);

            return(XsdValidator.ValidateXmlAgainsXsd(xml, xsdFileName, out this.validationError));
        }