- 浏览: 504303 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (329)
- [发布至博客园首页] (12)
- [随笔分类][01] .Net X (59)
- [随笔分类][20] Architecture (16)
- [随笔分类][21] Developer Logs (13)
- [网站分类]Windows 7 (1)
- [随笔分类][13] Oracle & .Net (7)
- [随笔分类][16] Love in China (14)
- [随笔分类][15] Development Tools (20)
- [随笔分类][18] Windows Phone (12)
- [随笔分类][12] Design & Pattern (17)
- [网站分类].NET新手区 (22)
- [网站分类]首页候选区 (2)
- [随笔分类][08] Windows (Server) (13)
- [随笔分类][02] CSLA.Net (3)
- [随笔分类][10] jQuery & javaScript (10)
- [随笔分类][11] SQL Server (4)
- [随笔分类][22] Enterprise Logs (3)
- [随笔分类][03] News (9)
- [随笔分类][19] Quality Assurance (2)
- [随笔分类][05] Silverlight (20)
- [随笔分类][14] Google Earth & .Net (6)
- [网站分类]非技术区 (9)
- [随笔分类][07] WWF (2)
- [随笔分类][04] SharePoint (1)
- [随笔分类][20] Analysis & Design (36)
- [随笔分类][06] WCF (5)
- [随笔分类][12] Architecture (1)
- [随笔分类][09] WPF (0)
- [随笔分类][17] VStudio & Expression (5)
最新评论
-
zhangyy130:
你好,我关于第二段的那个表视图、模型与图这三者的关系我没有看明 ...
UML模型的组成 -
guji528:
谢谢分享!
Enterprise Architect 基础应用 -
studentsky:
好文章,图文并茂!
WCF 第一个用 Visual Studio 2010 创建的WCF服务 -
chen975311486:
用哪个工具画的????
UML中对关系的描述 (二) -
frankies:
继续学习中。。
UML 交互概述图
下面是标准教程
XML 架构定义 (Xsd.exe) 工具从 XDR、XML 和 XSD 文件或者从运行库程序集中的类生成 XML 架构或公共语言运行库类。
xsd file.xdr [/outputdir:directory][/parameters:file.xml] xsd file.xml [/outputdir:directory] [/parameters:file.xml] xsd file.xsd {/classes | /dataset} [/element:element] [/enableLinqDataSet] [/language:language] [/namespace:namespace] [/outputdir:directory] [URI:uri] [/parameters:file.xml] xsd {file.dll | file.exe} [/outputdir:directory] [/type:typename [...]][/parameters:file.xml]
参数
参数
说明
file.extension
指定要转换的输入文件。 必须将扩展名指定为下列之一:.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,依此类推。 仅当给定类型使用 XMLRoot 自定义属性指定命名空间时,Xsd.exe 才生成多个架构。
常规选项
选项
说明
/h[elp]
显示该工具的命令语法和选项。
/o[utputdir]:directory
指定输出文件的目录。 此参数只能出现一次。 默认为当前目录。
/?
显示该工具的命令语法和选项。
/P[arameters]: file.xml
从指定的 .xml 文件读取各种操作模式的选项。 缩写形式为“/p:”。 有关更多信息,请参见下面的“备注”部分。
XSD 文件选项
必须为 xsd 文件仅指定下列选项中的一个。
选项
说明
/c[lasses]
生成与指定架构相对应的类。 若要将 XML 数据读入对象,请使用 System.Xml.Serialization.XmlSerializer.Deserializer 方法。
/d[ataset]
生成一个从 DataSet 派生的类,该类与指定的架构相对应。 若要将 XML 数据读入派生类,请使用 System.Data.DataSet.ReadXml 方法。
还可以为 .xsd 文件指定下列任何选项。
选项
说明
/e[lement]:element
指定架构中要为其生成代码的元素。 默认情况下,键入所有元素。 可以多次指定该参数。
/enableDataBinding
在所有生成的类型上实现 INotifyPropertyChanged 接口以启用数据绑定。 缩写形式为“/edb”。
/enableLinqDataSet
(缩写形式:/eld。) 指定可使用 查询的生成的数据集。 此选项在同时指定 /dataset 选项的情况下使用。 有关更多信息,请参见 LINQ to DataSet Overview 和 Querying Typed DataSets。 有关使用 LINQ 的常规信息,请参见Language-Integrated Query (LINQ)。
/f[ields]
生成字段,而不是生成属性。 默认情况下生成属性。
/l[anguage]:language
指定要使用的编程语言。 从 CS(默认情况下为 C#)、VB (Visual Basic)、JS (JScript) 或 VJS (Visual J#) 中进行选择。 也可指定实现 System.CodeDom.Compiler.CodeDomProvider 的类的完全限定名
/n[amespace]:namespace
为生成的类型指定运行库命名空间。 默认命名空间为 Schemas。
/nologo
取消显示版权标志。
/order
在所有粒子成员上生成显式顺序标识符。
/o[ut]: directoryName
指定要放置文件的输出目录。默认为当前目录。
/u[ri]:uri
为架构中要为其生成代码的元素指定 URI。 该 URI(如果存在)应用于使用 /element 选项指定的所有元素。
DLL 和 EXE 文件选项
选项
说明
/t[ype]:typename
指定要为其创建架构的类型的名称。 可以指定多个类型参数。 如果 typename 不指定一个命名空间,则 Xsd.exe 将程序集中的所有类型与指定类型相匹配。 如果 typename 指定一个命名空间,则仅匹配那个类型。 如果 typename 以星号字符 (*) 结尾,则此工具匹配所有以 * 前的字符串开头的类型。 如果省略 /type 选项,则 Xsd.exe 为程序集中的所有类型生成架构。
备注
下表显示了 Xsd.exe 执行的操作。
使用精简 XML 数据架构文件生成 XML 架构。 XDR 为早期基于 XML 的架构格式。
使用 XML 文件生成 XML 架构。
使用 XSD 架构文件生成公共语言运行库 DataSet 类。 生成的类为规则 XML 数据提供复杂对象模型。
使用 XSD 架构文件生成运行库类。 生成的类可以与 System.Xml.Serialization.XmlSerializer 一起使用,来读写遵循该架构的 XML 代码。
使用运行库程序集文件中的一个或多个类型生成 XML 架构。 生成的架构定义了 System.Xml.Serialization.XmlSerializer 使用的 XML 格式。
Xsd.exe 只允许操作遵循由万维网联合会 (W3C) 提议的 XML 架构定义 (XSD) 语言的 XML 架构。 有关 XML 架构定义提议或 XML 标准的更多信息,请参见 http://w3.org。
<?XML:NAMESPACE PREFIX = [default] http://ddue.schemas.microsoft.com/authoring/2003/5 NS = "http://ddue.schemas.microsoft.com/authoring/2003/5" />
通过 XML 文件设置选项
通过使用 /parameters 开关,可指定设置各种选项的单个 XML 文件。 可设置的选项取决于您如何使用 XSD.exe 工具。 选择包括生成架构、生成代码文件,或生成包含 DataSet 功能的代码文件。 例如,生成架构时可将 <assembly> 元素设置为可执行文件 (.exe) 或类库文件 (.dll) 的名称,但生成代码文件时则不能。 下面的 XML 演示如何将 <generateSchemas> 元素用于指定的可执行文件:
复制代码
<!-- This is in a file named GenerateSchemas.xml. --> <xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'> <generateSchemas> <assembly>ConsoleApplication1.exe</assembly> </generateSchemas> </xsd>
如果前面的 XML 包含在名为 GenerateSchemas.xml 的文件中,则通过在命令提示处键入下面的内容并按 Enter 使用 /parameters 开关:
xsd /p:GenerateSchemas.xml
另外,如果为程序集中的单个类型生成架构,则可以使用下面的 XML:
复制代码
<!-- This is in a file named GenerateSchemaFromType.xml. --> <xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'> <generateSchemas> <type>IDItems</type> </generateSchemas> </xsd>
但是若要使用上面的代码,您还必须在命令提示处提供程序集的名称。 在命令提示处键入下面的内容(假设 XML 文件名为 GenerateSchemaFromType.xml):
xsd /p:GenerateSchemaFromType.xml ConsoleApplication1.exe
必须为 <generateSchemas> 元素仅指定以下选项中的一个。
元素
说明
<程序集>
指定将从中生成架构的程序集。
<类型>
指定程序集中找到的要为其生成架构的类型。
<xml>
指定要为其生成架构的 XML 文件。
<xdr>
指定要为其生成架构的 XDR 文件。
若要生成代码文件,请使用 <generateClasses> 元素。 下面的示例生成一个代码文件。 请注意,另外还显示了两个属性,它们允许您为生成的文件设置编程语言和命名空间。
复制代码
<xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'> <generateClasses language='VB' namespace='Microsoft.Serialization.Examples'/> </xsd> <!-- You must supply an .xsd file when typing in the command line.--> <!-- For example: xsd /p:genClasses mySchema.xsd -->
可为 <generateClasses> 元素设置以下选项。
元素
说明
<元素>
指定 .xsd 文件中要为其生成代码的元素。
<schemaImporterExtensions>
指定派生自 SchemaImporterExtension 类的类型。
<schema>
指定要为其生成代码的 XML 架构文件。 使用多个 <schema> 元素,可以指定多个 XML 架构文件。
下表显示也可与 <generateClasses> 元素一起使用的属性。
属性
说明
language
指定要使用的编程语言。 从 CS(默认情况下为 C#)、VB (Visual Basic)、JS (JScript) 或 VJS (Visual J#) 中进行选择。 也可指定实现 CodeDomProvider 的类的完全限定名。
namespace
为生成的代码指定命名空间。 命名空间必须符合 CLR 标准(例如,没有空格或反斜杠字符)。
options
以下值之一:none、properties(生成属性而不是公共字段)、order 或 enableDataBinding(请参见前面“XSD 文件选项”一节的 /order 和 /enableDataBinding 开关)。
使用 <generateDataSets> 元素还可以控制如何生成 DataSet 代码。 下面的 XML 指定生成的代码使用 DataSet 结构(如 DataTable 类)为指定元素创建 Visual Basic 代码。 生成的数据集结构将支持 LINQ 查询。
<xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'>
<generateDataSet language='VB' namespace='Microsoft.Serialization.Examples' enableLinqDataSet='true'>
</generateDataSet>
</xsd>
可为 <generateDataSet> 元素设置以下选项。
元素
说明
<schema>
指定要为其生成代码的 XML 架构文件。 使用多个 <schema> 元素,可以指定多个 XML 架构文件。
下表显示可与 <generateDataSet> 元素一起使用的属性。
属性
说明
enableLinqDataSet
指定可使用 查询的生成的数据集。 默认值为 False。
language
指定要使用的编程语言。 从 CS(默认情况下为 C#)、VB (Visual Basic)、JS (JScript) 或 VJS (Visual J#) 中进行选择。 也可指定实现 CodeDomProvider 的类的完全限定名。
namespace
为生成的代码指定命名空间。 命名空间必须符合 CLR 标准(例如,没有空格或反斜杠字符)。
有些属性可在顶级 <xsd> 元素上设置。 这些选项可用于任何子元素(<generateSchemas>、<generateClasses> 或 <generateDataSet>)。 下面的 XML 代码在名为“MyOutputDirectory”的输出目录中为名为“IDItems”的元素生成代码。
复制代码
<xsd xmlns='http://microsoft.com/dotnet/tools/xsd/' output='MyOutputDirectory'> <generateClasses> <element>IDItems</element> </generateClasses> </xsd>
下表显示也可用于 <xsd> 元素的属性。
属性
说明
output
将放置生成的架构或代码文件的目录的名称。
nologo
取消显示版权标志。 设置为 true 或 false。
help
显示该工具的命令语法和选项。 设置为 true 或 false。
复制代码
示例
下面的命令从 myFile.xdr
生成一个 XML 架构并将它保存到当前目录中。
复制代码
xsd myFile.xdr
下面的命令从 myFile.xml
生成一个 XML 架构并将它保存到指定目录中。
复制代码
xsd myFile.xml /outputdir:myOutputDir
下面的命令生成一个与 C# 语言中的指定架构相对应的数据集,并在当前目录中将其保存为 XSDSchemaFile.cs
。
复制代码
xsd /dataset /language:CS XSDSchemaFile.xsd
下面的命令为程序集 myAssembly.dll
中的所有类型生成 XML 架构,并在当前目录中将它们保存为 schema0.xsd
。
示例
如下图打开XSD.exe
输入下面的命令:
xsd d:\TDDOWNLOAD\atom-author-link.xsd /c /language:C# /outputdir:d:\
含义:
将d:\TDDOWNLOAD\atom-author-link.xsd 架构 生成类 语言为C# 输出目录是d:\
结果在:D盘根目录下生成了一个名字叫 atom-author-link.cs 的类文件
问题:
我在用下面的语句生成的时候,Kml22bete.xsd里面有引用
<!-- import atom:author and atom:link -->
<import namespace="http://www.w3.org/2005/Atom"
schemaLocation="http://code.google.com/apis/kml/schema/atom-author-link.xsd"/>
<!-- import xAL:Address -->
<import namespace="urn:oasis:names:tc:ciq:xsdschema:xAL:2.0"
schemaLocation="http://docs.oasis-open.org/election/external/xAL.xsd"/>
用下面的命令处理,总是会报错,如何解决呢,那位知道的朋友告诉我谢谢
C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin>xsd d:\TDDOWNLOAD\kml22beta.xsd /c /language:C# /outputdir:d:\
Microsoft(R) Xml 架构/数据类型支持实用工具
[Microsoft (R) .NET Framework, Version 2.0.50727.3038]
Copyright (C) Microsoft Corporation. All rights reserved.
架构验证警告: 未声明“http://www.w3.org/2005/Atom:author”元素。 行 354,位置 12。
架构验证警告: 未声明“http://www.w3.org/2005/Atom:link”元素。 行 356,位置 12。
架构验证警告: 未声明“urn:oasis:names:tc:ciq:xsdschema:xAL:2.0:AddressDetails”元素。 行 359,位置 12。
发表评论
-
jQuery for Asp.Net 一步一步从入门到精通(附 jQuery API 彩色大图)
2009-01-17 20:10 2312随着像Silverlight·和 ... -
自己动手编写一个类似 QuickPart 的用户控件包装器
2009-01-19 17:58 841大家知道涂曙光写了一个QuickPart的包装器,那么大家 ... -
SQL Server 2008 Analysis Services 多维数据库一步一步从入门到精通
2009-02-13 18:14 1148您可以使用 Analysis Services 来分析大 ... -
Oracle 9i & PLSQL 全简体中文版数据库安装过程(图解)
2009-02-14 12:07 2146Oracle 安装的过程的教程很多,如果你搜索到我的博客,希望 ... -
SQL Server 2008 Analysis Services 多维数据库一步一步从入门到精通(二)---定义和部署多维数据集及问题处理
2009-02-14 22:34 2417定义维度 在解决方案 ... -
解决“System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。”(图)
2009-02-23 16:55 2166在用VSTS2005/2008+Oracle9做环 ... -
简单的源代码统计工具(统计源代码行数、工数、成本、质量指标统计)
2009-03-05 11:40 1830最新版本:2.2.30.36 点击下载 请看下面的图片 使 ... -
Google Earth & Asp.Net 一步一步从入门到精通(一)一个加载KML文档的例子
2009-03-06 22:31 1190Google Earth 和 Google Maps ... -
快速使用 SQLite 开源数据库 一个Asp.Net 的小例子
2009-03-08 10:02 2791据说SQLite已经是世界上部署最广泛的SQL数据库引 ... -
Oracle 10g for Windows 简体中文版的安装过程
2009-03-08 11:12 2104我的配置 操作系统:Windows Server ... -
EasyPHP 3 + Mantis 1.2 快速搭建安装免费开源的中文缺陷管理平台(图)
2009-04-09 16:10 2299EasyPHP 下载地址 http://eas ... -
WF (Windows Workflow Foundation) 工作流学习(一)一个Asp.Net 状态机验证程序
2009-04-10 17:56 3692源代码下载:http://files.cnblogs.com/ ... -
WF (Windows Workflow Foundation) 工作流学习(二)一个Asp.Net 与 顺序工作流 结合的例子
2009-04-13 14:49 3297程序下载地址: http://files.cnblogs.c ... -
Expression、WPF、Silverlight 入门 学习视频
2009-04-16 10:41 1271前言: 这不是一个教程,只是我在学习Expression过程 ... -
Expression Bland 入门视频(二) 创建一个用户控件
2009-04-17 13:13 1089描述:创建一个用户控件,例子源自微软官方视频网站 视频源码下载 ... -
Expression Bland 入门视频(三) 菜单、项目面板及工作区介绍
2009-04-17 17:55 776描述:如果你熟悉Visual Studio 这个视频就不要下 ... -
Expression Bland 入门视频(四) 了解工具栏
2009-04-19 12:57 980描述:本节全面的预览了一下 Bland 工具栏中的每个工具的作 ... -
Expression Bland 入门视频(五) 了解对象面板和属性面板
2009-04-19 18:42 749描述:本节大概的了解一下 Bland 中的对象面板和属性面板, ... -
Windows Gadget 开发常用的几个系统方法及设置
2009-07-14 13:33 18591.设置窗口关闭方法委托 System.Gadget.onS ... -
小技巧:在 Windows 7 的 IIS 7.5 中 运行 WCF 服务 404 错误
2009-08-03 13:59 1917在Windows 7 中运行运行一个Silverlight 3 ...
相关推荐
利用wsdl.exe生成webservice代理类: 根据提供的wsdl生成webservice代理类 1、开始->程序->Visual Studio 2005 命令提示 2、输入如下红色标记部分 D:\Program Files\Microsoft Visual Studio 8\VC>wsdl /...
不过,通常这样的文章会详细介绍如何利用JDK 1.6的工具如`xsd.exe`来解析XSD文件并生成对应的Java类。 标签“源码”和“工具”提示我们,这篇博文可能涉及了代码示例和使用的工具。在JDK 1.6中,`xjc`是实现这一...
XML Schema Definition (XSD) 是一种用于定义XML文档结构的语言,它规范了XML文档的元素、属性、数据类型以及它们之间的...通过选择合适的XSD可视化工具,并熟练掌握其使用,可以在处理XML相关项目时获得极大的便利。
使用CXF开发Web服务的一般步骤包括:创建XSD文件以定义服务接口,使用CXF工具生成Java类,编写服务实现,配置CXF和Spring,最后部署和测试服务。 6. **源码分析**: "apache-cxf-3.1.4-src.tar.gz"包含的源代码...
EMF XSD SDK提供了一整套工具和API,使得开发者能够轻松地将XSD文档转换为Java类,这些类可以直接在Java代码中使用,从而简化XML数据的处理。此外,它还支持XSD的验证、编辑和转换功能。 SDK中的关键组件包括: 1....
本文将深入探讨`dubbo.xsd`文件的作用、结构以及如何使用它来配置Dubbo服务。 1. **Dubbo.xsd的用途** `dubbo.xsd`是Dubbo配置文件的规范,它定义了XML文件中可以使用的元素、属性及其约束。当开发者按照这个规范...
Xgen介绍xgen是一个用Go语言编写的库,提供了一组允许您解析XSD... 下面的命令将在xsd路径上移动,并在output目录下生成Go语言结构代码。 $ xgen -i /path/to/your/xsd -o /path/to/your/output -l Go用法: $ xgen
在IT行业中,XML(eXtensible Markup Language)和XSD(XML Schema Definition)是用于数据交换和结构化数据描述的重要工具。XML是一种标记语言,它允许我们在文档中定义和组织结构化的数据,而XSD则是一种规范,...
6. **测试和验证**:为了确保生成的XML文件符合预期,可以使用XML验证工具,如XML Schema Definition (XSD) 或者 Relax NG,来检查文件是否符合定义的模式。 在压缩包文件“testXmlExcel”中,可能包含了示例的...
它使用库解析给定的架构文档,然后填充一些硬编码的值。 请检查以下示例。 XSD <? xml version = " 1.0 " encoding = " utf-8 " ?> < xs : element name = " empno " type = " xs:string " /
`csxsd.exe`可能是用来处理XML Schema文档的,因为`xsd`通常与XML Schema设计和生成有关。 `license.rtf`包含了软件的许可协议信息,用户在使用前应仔细阅读,确保遵循软件的使用条款。`history.txt`可能记录了软件...
3. **创建Java对象**:根据XSD定义,使用JAXB或其他库生成对应的Java类,这些类将作为与API交互的数据模型。 4. **构建请求**:使用这些Java对象构建符合API要求的XML请求。 5. **发送请求**:通过HTTP客户端(如...
1. **定义XML架构(DTD或XSD)**:为了确保生成的XML符合特定格式,需要先定义一个文档类型定义(DTD)或XML Schema(XSD)。这些定义了元素、属性和它们的约束,如同一种“蓝图”。 2. **创建XML文档对象模型(DOM...
不用編寫SQL語句或存儲過程即可實現下列功能: 1、數據表、試... <br>提供 1、对象关系映射组件: Kenly.DBFramework.dll 2、代码生成器:Xsd2CS.exe 3、范例:数据库脚本、ASP.NET工程 4、使用手册。
通过使用xsd.exe工具,可以将现有的XML文档转换为XSD,反之亦然。这确保了XML数据遵循预定义的规范,增强了数据的可靠性。 总结来说,C#中的XML操作涉及到加载和解析XML文件,使用XPath查询和修改节点,利用LINQ to...
gSOAP编译工具提供了一个SOAP/XML 关于C/C++ 语言的实现,从而让C/C++语言开发web...3. 如果webservice是php的 请注意修改php版wsdl中类型为标准类型(默认好像php生成的wsdl文件某些类型未做指定, 如xsd:string之类的)
wsdl2h.exe用来将wsdl文件转换为头文件,而soapcpp2.exe用来根据接口头文件生成应用程序客户端和服务端的框架文件。 在使用gsoap时,需要生成头文件,可以通过两种方式得到:一是由现有的wsdl文件转换得到,使用...
ajax调用java实例源码xsd 表格 您想要制作一个提交结构化数据 (XML/JSON) 的 Web 表单。 xsd-forms基于已用一些表示信息注释的 xml 模式 (XSD) 为您生成 Web 表单。 xsd-forms已被部署到一个免费可用的环境中,以...
4. **XML验证和优化**:生成的XML文件可能需要通过验证,以确保其符合预定义的XML架构(如XSD),并进行可能的优化,如压缩重复的数据,去除不必要的空格和换行,以减小文件大小并提高处理效率。 5. **支持批量转换...