ParseXSD.cs
using System;
using System.Collections;
using System.Xml;
using System.Xml.Schema;
class XmlSchemaTraverseExample
{
static void Main()
{
// Add the customer schema to a new XmlSchemaSet and compile it.
// Any schema validation warnings and errors encountered reading or
// compiling the schema are handled by the ValidationEventHandler delegate.
XmlSchemaSet schemaSet = new XmlSchemaSet();
schemaSet.ValidationEventHandler += new ValidationEventHandler(ValidationCallback);
schemaSet.Add("http://www.w3.org/2001/XMLSchema", "tmp.xsd");
schemaSet.Compile();
// Retrieve the compiled XmlSchema object from the XmlSchemaSet
// by iterating over the Schemas property.
XmlSchema customerSchema = null;
foreach (XmlSchema schema in schemaSet.Schemas())
{
customerSchema = schema;
}
// inserted more code here....
}
}
В настоящее время мой ConsoleApp работал очень хорошо.
И я хочу удалить жесткий код (путь к файлу xsd) из моего кода ниже.
// Я не знаю, как обновить эту строку.
schemaSet.Add("http://www.w3.org/2001/XMLSchema", "tmp.xsd");
Тогда я смогу запустить свой файл ParseXSD.cs во время сборки с помощью команды CSC ниже.
// Я не знаю правильный формат команды. Я мог бы легко обновить параметр пути. НЕТ жесткого кода.
CSC ParseXSD.cs d:/tmp/tmp.xsd
Пожалуйста, дайте мне руководство. заранее спасибо.