【问题标题】:XSD Namespace to C# NamespaceXSD 命名空间到 C# 命名空间
【发布时间】:2010-12-23 00:39:34
【问题描述】:

我们正在寻找一种让 C# 从 XSD 自动生成类并使用 XSD 中的命名空间信息创建 C# 命名空间的方法。

您似乎不能从 XSD 创建结构化 (xxxx.yyyy.zzzz) C# 命名空间?

我们缺少什么技巧吗?

谢谢

【问题讨论】:

  • 你能补充一些细节吗?你试过什么?什么不起作用?
  • 难道你不能从命名空间 URL 中去掉“http”和斜杠,并通过用点替换斜杠来创建一个 c# 命名空间吗? (例如mydomain.com/myservice/1.0 = 命名空间 mydomain.com.myservice.1.0

标签: c# namespaces


【解决方案1】:

这能解决问题吗? /n 允许你指定一个命名空间来放置生成的类。

xsd.exe /classes MyXSDInput.xsd /n:MyCsharpNamespace

【讨论】:

    【解决方案2】:

    Codeplex 上有一个非常有趣的项目XSD2Code。它与xsd.exe 基本相同——只是在命令行上和作为 Visual Studio 插件更好。

    您只需在解决方案资源管理器中右键单击 XSD 文件并运行该工具!

    alt text http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=Xsd2Code&DownloadId=41336

    您可以将任何有效的 .NET 命名空间设置为生成的代码文件的目标命名空间。

    更新:XSD2Code 工具已得到进一步开发,现在作为免费和付费商业工具提供 - see the official home page for more details

    【讨论】:

    • 这个工具 (Xsd2Code) 可能非常有用,但我不能在 nVS2012 中使用它。我尝试了 VS Gallery 的插件和 Codeplex 的下载。没有奏效,所以我投票 - 1 反对你的答案。
    • @achristov:很抱歉听到您的问题 - 但我无法重现您的问题 - 我刚刚从 Codeplex 再次下载了该工具,安装了它,重新启动了 Visual Studio,我可以正常使用 XSD2Code 工具了。投反对票似乎有点苛刻 - 如果有问题,那么作者的工作就是解决它,我不应该因为这样的问题而受到惩罚 .. ..
    • 我在您的回答中找到了 Xsd2Code 的链接。一旦安装工具出现问题,它就没有用了,对吧?我要继续吗?
    • 此工具执行 XSD.exe 工具默认不执行的操作。如果您不是 XML 大师并且不熟悉名称空间等,请尝试使用此工具。它不是免费软件,但前 15 天是免费的。
    猜你喜欢
    • 2012-06-01
    • 2023-04-09
    • 2014-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多