Я разрабатываю веб-службу для проверки XML файла с файлом XSD. Я должен использовать эту веб-службу в другом приложении. Функция, которая проверяет XML:
public string validate(String xml_file, string xsd_file)
{
XmlSchemaSet schemas = new XmlSchemaSet();
schemas.Add(null, xsd_file);
XDocument custOrdDoc = XDocument.Load(xml_file);
string error_msg = "no error";
custOrdDoc.Validate(schemas, (o, e) =>
{
error_msg = e.Message;
});
return error_msg;
}
Когда эта веб-служба используется в приложении, она возвращает "без ошибок" для всех входов, даже если файлы xml и схемы не совпадают. Пожалуйста, помогите мне с этим.
Я считаю, что проблема, с которой вы сталкиваетесь, может иметь отношение к использованию разных пространств имен в документе и схеме. См. Здесь:
XDocument.Validate проблемы с пространством имен
У меня был успех с использованием XmlDocument для проверки в прошлом, и я считаю, что у него нет одинаковых проблем.
http://msdn.microsoft.com/en-us/library/ms162371(v=vs.110).aspx