поиск schemaLocation в c # XmlSchema - PullRequest
       1

поиск schemaLocation в c # XmlSchema

1 голос
/ 19 октября 2010

у меня есть следующая схема, загруженная в xmlSchema:

...
<xs:import schemaLocation="\_1.xsd" namespace="http://tempuri.org/" />
...

я хочу получить строку "_1.xsd"

как мне получить значение schemaLocation из API XmlSchema? будет ли schemaSet работать лучше?

Спасибо

Ответы [ 2 ]

1 голос
/ 19 октября 2010

я наконец-то использовал это:

schema.Includes[0] as XmlSchemaImport;
var wsdlId = schemaImport.SchemaLocation;
0 голосов
/ 19 октября 2010
using System.Xml.Schema;
using System.IO;
using System.Reflection;

Это должно сработать, может вызвать некоторые ошибки, так как я не скомпилировал его в IDE, так как я не на атм-машине Dev.

string xsd = "example.xsd";

FileStream fs;
XmlSchema schema;

fs = new FileStream(xsd, FileMode.Open);
schema = XmlSchema.Read(fs, new ValidationEventHandler(ShowCompileError));

foreach (XmlSchemaObject externalSchema in schema.Includes)
{
    string schemaLoc = (XmlSchemaExternal)externalSchema.SchemaLocation.ToString();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...