Инструмент за дефиниране на XML схема (), Microsoft Docs
Инструментът за дефиниране на XML схема (Xsd.exe) генерира XML схема или CLR класове от XDR, XML и XSD файлове или от класове в сборка по време на изпълнение.
Указва входния файл за преобразуване. Трябва да се посочи едно от следните разширения: XDR, XML, XSD, DLL или EXE.
Ако посочите файл с XDR схема (XDR разширение), Xsd.exe преобразува XDR схемата в XSD схема. Името на изходния файл е същото като името на XDR схемата, но има разширение XSD.
Ако посочите XML файл (.xml разширение), Xsd.exe определя схемата от данните във файла и генерира XSD схемата. Името на изходния файл е същото като името на XML файла, но има разширение .xsd.
Ако посочите файл с XML схема (.xsd разширение), Xsd.exe генерира изходен код за обектите по време на изпълнение, които съответстват на XML схемата.
Ако посочите файл за изпълнение на асемблиране (разширение .exe или .dll), Xsd.exe генерира схеми за един или повече типове в това асемблиране. Можете да използвате опцията /type, за да посочите типовете, за които искате да генерирате схеми. Изходните схеми се наричат schema0.xsd, schema1.xsd и т. н. Xsd.exe генерира множество схеми само ако посочените типове указват пространство от имена с помощта на персонализирания атрибут XMLRoot.
Общи параметри
Показва синтаксиса на командите и програмните опции.
Указва изходната директория. Този аргумент се показва само веднъж. Стойността по подразбиране е текущата директория.
Показва синтаксиса на командите и програмните опции.
Чете параметрите за различни режими на работа от посочения XML файл. Кратка форма "/p:". Вижте раздела Забележки за повече информация.
Опции за XSD файл
За XSD файлове трябва да бъде посочено само едно от следнитепараметри.
Генерира класове, които отговарят на определената схема. За да прочетете XML данни в обект, използвайте метода System.Xml.Serialization.XmlSerializer.Deserializer.
Създава класове, които са извлечени от класа DataSet и съответстват на указаната схема. За да прочетете XML данни в производен клас, използвайте метода System.Data.DataSet.ReadXml.
За XSD файлове можете също да посочите някоя от следните опции.
Идентифицира елемента в схемата, за който се генерира код. По подразбиране всички елементи имат тип. Този аргумент може да бъде даден многократно.
Внедрява интерфейса INotifyPropertyChanged на всички генерирани типове, за да осигури обвързване на данни. Кратката форма е "/edb".
(Кратка форма: /eld.) Указва, че генерираният набор от данни може да бъде заявен с помощта на LINQ to DataSet. Тази опция се използва само когато е зададена опцията /dataset. За повече информация вижте Разбиране на LINQ към набор от данни и заявка за въведени набори от данни. За обща информация относно използването на LINQ вижте LINQ.
Създава полета вместо свойства. Свойствата се създават по подразбиране.
Указва езика за програмиране, който да се използва. Наличните опции са CS (C#, по подразбиране), VB (Visual Basic), JS (JScript) или VJS (Visual J#). Можете също да посочите пълното име на класа, който имплементира CodeDomProvider
Указва пространството на имената по време на изпълнение за генерирани типове. Пространството от имена по подразбиране е Схеми.
Генерира изрични идентификатори на поръчка за всички примитивни членове.
Указва изходната директория, в която да се поставят файловете. Стойността по подразбиране е текущата директория.
Указва Uniform Resource Identifier (URI) за елементите на схемата, за които се генерира кодът. Този URI,ако присъства, се прилага за всички елементи, посочени от параметъра /element.
Опции за DLL и EXE файлове
Указва името на типа, за който да се създаде схема. Можете да посочите няколко типа аргументи. Ако typename не указва пространство от имена, Xsd.exe картографира всички типове в асемблирането към посочения тип. Ако typename указва пространство от имена, само този тип се съпоставя. Ако typename завършва със звездичка (*), инструментът съвпада с всички типове, които започват с низа, който предхожда звездичката (*). Ако опцията /type не е посочена, Xsd.exe генерира схеми за всички типове в сборката.
Следващата таблица показва операциите, извършвани от Xsd.exe.
XDR към XSD Създава XML схема от файл с XDR схема. XDR е по-стар формат на схема, базиран на XML.
XML към XSD Създава XML схема от XML файл.
XSD към DataSet Създава CLR DataSet класове от XSD файл със схема. Генерираните класове предоставят обектен модел с богата функционалност за обикновени XML данни.
XSD към класове Генерира класове по време на изпълнение от файл на XSD схема. Генерираните класове могат да се използват заедно с XmlSerializer за четене и запис на XML код, който съответства на схемата.
Класове в XSD Създава XML схема от тип или типове във файл за асемблиране по време на изпълнение. Генерираната схема дефинира XML формата, използван от System.Xml.Serialization.XmlSerializer.
Xsd.exe управлява само XML схеми, които отговарят на езика за дефиниране на XML схеми (XSD) на World Wide Web Consortium (W3C). За повече информация относно предложената дефиниция на XML схема или XML стандарта вижте http://w3.org.
Задаване на опции с помощта на XML файл
С помощта на ключа /parameters можетезадайте един XML файл, който съдържа различни опции. Опциите, които задавате, зависят от това как използвате инструмента XSD.exe. Опциите включват създаване на схеми, кодови файлове или създаване на кодови файлове, които съдържат DataSet функции. Например, можете да посочите елемент като име на изпълним файл (разширение EXE) или файл на библиотека с типове (разширение DLL), когато създавате схема, но не и когато създавате кодов файл. Следният XML пример показва как да използвате елемента с посочения изпълним файл:
Ако предишният XML се съдържа във файл с име "GenerateSchemas.xml", използвайте превключвателя /parameters, като въведете следния текст в командния ред и натиснете ENTER:
От друга страна, когато създавате схема за единичен тип, открит в сборка, може да се използва следният XML:
Но за да използвате предишния код, трябва също да посочите името на сборката в командния ред. В командния ред въведете следната команда (да кажем, че името на XML файла е GenerateSchemaFromType.xml):
xsd /p:GenerateSchemaFromType.xml ConsoleApplication1.exe
Трябва да посочите само една от следните опции за елемент.
Указва сборката, от която се генерира схемата.
Указва типа, открит в асемблирането, за което е генерирана схемата.
Указва XML файла, за който се генерира схемата.
Указва XDR файла, за който се генерира схемата.
За да създадете кодов файл, използвайте . Следният пример създава кодов файл. Обърнете внимание, че се показват и два атрибута, които ви позволяват да зададете езика за програмиране и пространството от имена на генерирания файл.
Опциите, които можете да зададете за елемента, включват следното.
Идентифицира елемента в XSD файла, за който се генерира код.
Определя типанаследен от класа SchemaImporterExtension.
Указва файла на XML схемата, за който се генерира код. Множество елементи могат да указват множество файлове с XML схема.
Следната таблица изброява атрибутите, които също могат да се използват с елемента.
Указва езика за програмиране, който да се използва. Наличните опции са CS (C#, по подразбиране), VB (Visual Basic), JS (JScript) или VJS (Visual J#). Можете също така да посочите напълно квалифицираното име на класа, който имплементира CodeDomProvider.
Указва пространството от имена на генерирания код. Пространството от имена трябва да отговаря на стандартите на CLR (например без интервали или обратни наклонени черти).
Една от следните стойности: няма, свойства (създава свойства вместо публични полета), поръчка или enableDataBinding (вижте превключвателите /order и /enableDataBinding в предишния раздел с опции за XSD файл).
Също така имате способността да контролирате генерирането на код на DataSet с помощта на . Следният XML указва, че генерираният код използва структури на DataSet (като класа DataTable), за да генерира код на Visual Basic за посочения елемент. Генерираните DataSet структури поддържат LINQ заявки.
Опциите, които можете да зададете за елемента, включват следното.
Указва файла на XML схемата, за който се генерира код. Множество елементи могат да указват множество файлове с XML схема.
Следващата таблица изброява атрибутите, които могат да се използват с елемента.
Указва, че генерираният набор от данни може да бъде заявен с помощта на LINQ to DataSet. Стойността по подразбиране е false.
Указва езика за програмиране, който да се използва. Наличните опции са CS (C#, по подразбиране), VB (Visual Basic), JS (JScript) или VJS (Visual J#). Можете също да посочите пълното име на клас,внедряване на CodeDomProvider.
Указва пространството от имена на генерирания код. Пространството от имена трябва да отговаря на стандартите на CLR (например без интервали или обратни наклонени черти).
Има атрибути, които могат да бъдат зададени на елемент от най-високо ниво. Тези опции могат да се използват с всеки от дъщерните елементи ( , или ). Следният XML код генерира код за елемент с име „IDItems“ в изходна директория с име „MyOutputDirectory“.
Следната таблица изброява атрибутите, които също могат да се използват с елемента.
Името на директорията, където се записва генерираната схема или кодов файл.
Деактивира банера. Задайте вярно или невярно.
Показва синтаксиса на командите и програмните опции. Задайте вярно или невярно.