Function to validate xml

3

I have this function to validate an xml:

public static bool ValidarXML(string pathXML, string pathSchema, ref string retorno)
    {
        bool falhou;

        // Define o tipo de validação
        XmlReaderSettings settings = new XmlReaderSettings();
        settings.ValidationType = ValidationType.Schema;
        // Carrega o arquivo de esquema
        XmlSchemaSet schemas = new XmlSchemaSet();
        settings.Schemas = schemas;
        // Quando carregar o eschema, especificar o namespace que ele valida
        // e a localização do arquivo 
        schemas.Add(null, pathSchema);
        // Especifica o tratamento de evento para os erros de validacao
        // settings.ValidationEventHandler += ValidationEventHandler;
        // cria um leitor para validação
        XmlReader validator = XmlReader.Create(pathXML, settings);
        falhou = false;
        try
        {
            // Faz a leitura de todos os dados XML
            while (validator.Read()) { }
        }
        catch (XmlException err)
        {
            // Um erro ocorre se o documento XML inclui caracteres ilegais
            // ou tags que não estão aninhadas corretamente
            retorno = "Ocorreu um erro critico durante a validação do XML: " + err.Message;
            falhou = true;
        }
        finally
        {
            validator.Close();
            retorno = "Arquivo validado com sucesso";
        }
        return !falhou;
    }

But I am trying to pass the file, and it is returning me error:

 ValidarXML("E:\nota.xml", typeof(tcNfse), ref a);

The schema in this case is typeof(tcNfse) It returns the following error:

  

Can not convert from "System.Type" to "string"

As per the comments, I was able to resolve this error above by adding the suggestion:

ValidarXML("E:\nota.xml", nameof(tcNfse), ref a);

But he says he can not find tcNfse , he's looking for the file inside the project, in case I have to go through the file location, is that it? instead of it within the program?

    
asked by anonymous 22.11.2018 / 13:45

0 answers