如何从类创建 XSD 架构?

2023-11-24

我在处理 XSD 文件时遇到了困难。

我正在尝试从类创建 XSD 文件:

public enum Levels { Easy, Medium, Hard }
public sealed class Configuration
{
    public string Name { get;set; }
    public Levels Level { get; set; }
    public ConfigurationSpec { get;set;}
}

public abstract class ConfigurationSpec { }
public class ConfigurationSpec1
{
    // ...
}
public class ConfigurationSpec2
{
    // ...
}

请注意,我在 Configuration 中有一个抽象类。有了这个功能,是否可以创建 XSD?如果可以,如何创建?

这个想法是将类 Configuration 传递给 XSD。


就可以成功集成了xsd.exe像这样进入 Visual Studio IDE:

Go into Tools, External Tools and click the Add button:

2010

enter image description here

2015 / 2017 年

enter image description here

Title:

从类创建架构

命令(每个框架):

4.0

C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\x64\xsd.exe

4.5.1

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\x64\xsd.exe

4.6.*

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.* Tools\x64\xsd.exe

论据:

$(BinDir)$(TargetName).dll /outputdir:$(ItemDir) /type:$(ItemFileName)

使用输出窗口:

防止弹出额外的命令窗口并保留输出记录,直到您清除它。也许是个好主意。

提示参数:

检查是否要测试输出或排除故障;否则,请勿选中。

Click OK

如何使用:

  1. 编译您的项目! XSD.exe只查看编译后的代码。
  2. 点击班级解决方案浏览器.
  3. Click Tools, Create Schema From Class
  4. Click on the Show All Files button in the Solution Explorer.
  5. 查看与您的班级相同的文件夹,您会看到Schema0.xsd.
  6. 右键单击Schema0.xsd并选择Include In Project
  7. Rename Schema0.xsd to <the name of the class>.xsd
  8. (可选)您可能需要编辑这个新的xsd如果您想使用此架构在 xml 编辑器中编辑 xml 文件并且未使用所有属性,请手动进行。您可以更换use="required" with use="optional"如果确实不需要这些属性,则可以消除 xml 编辑器中的蓝色波浪线(这会产生警告)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从类创建 XSD 架构? 的相关文章

  • 在 Web 浏览器中禁用 F5 [重复]

    这个问题在这里已经有答案了 可能的重复 禁用浏览器的后退按钮 https stackoverflow com questions 961188 disable browsers back button 如何禁用浏览器上的 F5 刷新 htt
  • EventHandler 应该始终用于事件吗?

    我一直在愉快地使用自定义委托类型和通用编写事件Action委托类型 没有真正考虑我在做什么 我有一些很好的扩展助手Action and EventHandler这使我倾向于使用那些预定义的委托类型而不是我自己的委托类型 但除此之外 除了惯例
  • 类中是否可以有虚拟类声明?

    我正在为个人项目中框架的各个组件设置一个接口 我突然想到了一些我认为可能对接口有用的东西 我的问题是这是否可能 class a public virtual class test 0 class b public a public clas
  • 从时间列表中查找最接近的时间

    所以 这是场景 我有一个带有创建时间的文件 我想从该文件的创建时间最接近或相等的时间列表中选择一个时间 完成此操作的最佳方法是什么 var closestTime listOfTimes OrderBy t gt Math Abs t fi
  • 判断串口是普通COM还是SPP

    我正在寻找一种方法来确定 COM 是标准 COM 还是 SPP COM 也称为 COM 设备的电缆替换蓝牙适配器 我有一个可以在 USB COM gt USB 和蓝牙下工作的设备 并且蓝牙接口可以与 SPP 一起工作 我目前正在使用Syst
  • 编写具有多种类型的泛型扩展方法时的类型推断问题

    我正在为 IEnumerable 编写一个通用扩展方法 用于将对象列表映射到另一个映射对象列表 这就是我希望该方法的工作方式 IList
  • 如何在新窗口中打开图像或pdf文件?

    我有一个 gridview 它包含文件名和文件路径 图像和 pdf 格式文件 其中我使用了模板字段 在该字段下放置了 1 个图像按钮 单击该图像按钮 即 查看 按钮 时 我想在新窗口中打开所选文件 这是我的代码 protected void
  • 是否可以在Linux上将C转换为asm而不链接libc?

    测试平台为Linux 32位 但也欢迎 Windows 32 位上的某些解决方案 这是一个c代码片段 int a 0 printf d n a 如果我使用 gcc 生成汇编代码 gcc S test c 然后我会得到 movl 0 28 e
  • 如果在代码中添加元素,“FindName”将不起作用

    在 WPF 应用程序中 如果在 XAML 中声明 ContentControl
  • 如何使用 C# 查询远程 MS ACCESS .mdb 数据库

    我正在尝试使用 C 查询 mote MS ACCESS 数据库 mdb 文件 将文件复制到本地计算机时可以成功查询它 我只想远程放置文件 所以我的客户端程序不包含原始数据 static string m path http www xyz
  • 将 2 个字节转换为整数

    我收到一个 2 个字节的端口号 最低有效字节在前 我想将其转换为整数 以便我可以使用它 我做了这个 char buf 2 Where the received bytes are char port 2 port 0 buf 1 port
  • 在 Qt 中播放通知(频率 x)声音 - 最简单的方法?

    Qt 5 1 或更高版本 我需要播放频率为 x 的通知声音 n 毫秒 如果我能像这样组合音调那就太好了 1000Hz 持续 2 秒 然后 3000Hz 持续 1 秒 最简单的方法是使用文件 WAV MP3 例如如此处所述 如何用Qt播放声音
  • 如何测试某些代码在 C++ 中无法编译? [复制]

    这个问题在这里已经有答案了 可能的重复 单元测试编译时错误 https stackoverflow com questions 605915 unit test compile time error 我想知道是否可以编写一种单元测试来验证给
  • 将日期时间显示为 MM/dd/yyyy HH:mm 格式 C#

    在数据库中 日期时间以 MM dd yyyy HH mm ss 格式存储 但是 我想以 MM dd yyyy HH mm 格式显示日期时间 我通过使用 String Format 进行了尝试 txtCampaignStartDate Tex
  • 如何调用与现有方法同名的扩展方法? [复制]

    这个问题在这里已经有答案了 我有这样的代码 public class TestA public string ColA get set public string ColB get set public string ColC get se
  • 时间:2019-03-17 标签:c#TimerStopConfusion

    我想通过单击按钮时更改文本颜色来将文本框文本设置为 闪烁 我可以让文本按照我想要的方式闪烁 但我希望它在闪烁几次后停止 我不知道如何在计时器触发几次后让它停止 这是我的代码 public Form1 InitializeComponent
  • 值和类型的简洁双向静态 1:1 映射

    我将从我想象如何使用我想要创建的代码开始 它不必完全像这样 但它是我在标题中所说的 简洁 的一个很好的例子 就我而言 它是将类型映射到相关的枚举值 struct bar foo
  • 如何知道 HTTP 请求标头值是否存在

    我确信这很简单 但是却让我感到厌烦 我在 Web 应用程序中使用了一个组件 它在 Web 请求期间通过添加标头 XYZComponent true 来标识自身 我遇到的问题是 如何在视图中检查此组件 以下内容不起作用 if Request
  • 如何在 Razor 编辑视图中显示选中的单选按钮 Asp net core mvc

    尽管 Razor 视图中的 Asp 网络核心代码 model List
  • IDisposable 的显式实现

    虽然有很多关于IDisposable在 SO 上找到 我还没有找到答案 我通常遵循这样的做法 当我的一个班级拥有一个IDisposable对象然后它也实现IDisposable并打电话Dispose在拥有的对象上 然而最近我遇到了一个类 它

随机推荐

  • LINQ 中的升序/降序 - 可以通过参数更改顺序吗?

    我有一个给出参数 bool sortAscending 的方法 现在我想使用 LINQ 根据此参数创建排序列表 然后我得到了这个 var ascendingQuery from data in dataList orderby data P
  • c++ 从 hbitmap 获取原始像素数据

    我对使用 p invoke 调用相当陌生 想知道是否有人可以指导我如何从 hbitmap 检索原始像素数据 unsigned char 这是我的场景 我正在加载一个 NET 位图对象在C 侧并将其 IntPtr 发送到我的非托管 C 方法
  • 如何模拟用 jest.mock 模拟的类的实例方法?

    如何模拟正在模拟的类的实例方法jest mock 例如 一个类Logger被嘲笑 import Person from Person import Logger from Logger jest mock Logger describe P
  • mocha / babel 如何动态转译我的测试代码?

    我的问题不是为什么有些东西不起作用 而是为什么它起作用 是的 我有一个小NodeJS 命令行工具 其中包含 NodeJS 尚不支持开箱即用的功能 最值得注意的是 import声明 String includes 因此 为了交付 构建 我转译
  • 修改Windows的MBR

    我需要修改 Windows 的 MBR 并且我真的很想在 Windows 上执行此操作 这是我的问题 我知道我可以通过调用 CreateFile 来获取物理设备的句柄 MBR 是否始终位于 PHYSICALDRIVE0 上 另外 我仍在学习
  • 重新安装 Mac OS X 后 npm 无法工作

    我不得不在我的笔记本电脑上重新安装 Mac OS X Mavericks 现在 npm 不起作用了 但是 node 仍在笔记本电脑上 npm 位于 PATH 中 christohersmbp3 angular phonecat christ
  • 用户单击主页按钮后将应用程序置于最前面

    我的申请在运行模式 前台 用户单击主页按钮 这会将应用程序置于背景 并且仍在运行 我的应用程序中有警报功能 该功能会启动 我想要的是 当我的闹钟响起时 我想将我的后台运行应用程序置于前台 并从它所处的最后状态开始
  • 循环内的 try- except

    我需要调用方法f 如果它引发IOError 我需要再次调用它 重试 最多执行三次 我需要记录任何其他异常 并且需要记录所有重试 下面的代码可以做到这一点 但看起来很丑 请帮助我让它变得优雅和Pythonic 我正在使用Python 2 7
  • 在绘图文本中使用表达式 - 打印变量的值而不是其名称

    我正在尝试获得一个标签 其中包含指数 这是我的代码 vall format cor x y cor x y digits 3 eq lt expression paste R 2 vall sep text legend x legend
  • C:为什么用 %s 打印空字符会打印“(null)”?

    为什么用 s 打印 null char 0 0 实际上会打印 null 字符串 就像这段代码 char null byte 0 printf null byte s n null byte 印刷 null byte null 甚至在 Val
  • BindingExpression 路径错误:在“对象”上找不到属性

    我已经在输出窗口中出现的这个错误上搜索了几个小时 我对 WPF 中的绑定还很陌生 所以我确信我缺少一些东西 错误全文 每个绑定路径都有一个 都与此类似 System Windows Data 错误 39 BindingExpression
  • IOS:可以在每个角上使用不同的值来舍入半径

    我想圆润我的UIView具有这样的价值 top left radius 20 bottom right radius 5 bottom left radius 5 and top right radius 10 For rounder UI
  • 与 ItemControl 的双向绑定

    我正在尝试编写一个具有 ItemsControl 的用户控件 其中的 ItemsTemplate 包含一个允许 TwoWay 绑定的 TextBox 但是 我一定在代码中的某个地方犯了错误 因为绑定似乎仅在 Mode OneWay 时才起作
  • 在 unix 中使用 shell 脚本从文件名中提取日期

    我正在研究 shell 脚本 我想从文件名中提取日期 文件名是 abcd 2014 05 20 tar gz 我想从中提取日期 2014 05 20 echo abcd 2014 05 20 tar gz grep Eo digit 4 d
  • 如何仅使用 OpenCV HighGui 制作一个简单的一键窗口?

    我正在使用 OpenCV 开发一个游戏项目 现在我必须制作一个简单的 GUI 一个带有一个按钮的窗口 仅使用 HighGui 我不确定 但我想我应该使用这样的东西 cvNamedWindow NameWindow CV WINDOW AUT
  • TCPDF - 标题图像仅显示在第一页上

    我正在使用 TCPDF 生成 2 页 pdf 文档 我已向文档添加了页眉和页脚 页眉和页脚的文本部分在每个页面上正确显示 但是当我在页眉中包含图像徽标时 它仅显示在第一页上 public function Header this gt Im
  • 无法在 Ubuntu 中升级 Android studio

    我目前正在使用 android studio 2 0 但想将其更新到 2 1 因为它已在稳定频道上发布 现在 当我按下 更新并重新启动 按钮时 它会下载补丁 然后退出 但不会自行重新启动 因此 我手动启动它以检查更新是否成功 但它仍然显示
  • Emacs Lisp:(函数(lambda ...))和(lambda ...)之间的区别?

    有什么区别 function lambda and lambda and lambda 在很多情况下 这三个似乎可以互换 它们非常可以互换 答案是function enableslambda 要进行字节编译 而其他两个则不需要 并且是等效的
  • Python计算列表中其他字符串列表中不重复的子字符串的数量

    我有两个清单 main list Smith Smith Roger Roger Smith 42 master list Smith Roger 我想计算在 main list 字符串中从 master list 中找到字符串的次数 而不
  • 如何从类创建 XSD 架构?

    我在处理 XSD 文件时遇到了困难 我正在尝试从类创建 XSD 文件 public enum Levels Easy Medium Hard public sealed class Configuration public string N