【问题标题】:xsd to class (C#) in visual studio 2019xsd 到 Visual Studio 2019 中的类(C#)
【发布时间】:2019-07-20 17:44:36
【问题描述】:

我正在学习一个教程,一步一步打开“VS2012 arm cross tools command prompt”并执行

xsd file.xsd /classes

我在计算机上找不到“VS2012 arm cross tools command prompt”(我猜是因为我使用的是 VS2019)所以我打开了“VS 2019 的开发人员命令提示符”,但是当我运行命令时,我得到一个错误:

“xsd”不是内部或外部命令、程序或可执行批处理文件

谁能告诉我如何在 VS 2019 中从 xsd 文件创建一个类?感谢您的宝贵时间。

【问题讨论】:

  • 您是否在 C:\ 驱动器中搜索过 xsd.exe?如果找不到,则需要从here 安装 SDK
  • 开发人员命令提示符对我有用。它在 PATH 中包含“C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools”,这就是 xsd.exe 所在的位置(对我来说......)。

标签: c# visual-studio-2019


【解决方案1】:

一旦您安装了 Windows SDK。以下内容可能对您有所帮助……它是 .NET Core。浏览到 xsd.exe 并在 VS 2019 中添加对它的引用。

class Program
{
    static void Main(string[] args)
    {
        var rgs = new string[]
        {
            @"PathToYourDLL\My.dll",
            "/type:ClassNameToGen"
        };

        AppDomain.CurrentDomain.FirstChanceException += (s, e) =>
        {
            string error = e.Exception.ToString();

            var typeLoadException = e.Exception as ReflectionTypeLoadException;

            if (typeLoadException != null)
            {
                foreach (var exception in typeLoadException.LoaderExceptions)
                {
                    error += Environment.NewLine + Environment.NewLine + exception.ToString();
                }
            }

            Console.WriteLine(error);
        };

        XsdTool.Xsd.Main(rgs);

        Console.ReadLine();
    }
}

【讨论】:

  • 嗨@Simon Wilson,谢谢你的回答。安装最新的 .net 框架并重新启动 PC 使其工作。我不确定我应该如何处理您发布的代码
  • 如果你有它的工作,那么你可以忽略我的代码。这就是我用来从一个类型创建 XSD...我想你想要它的另一种方式对吗?抱歉,我看错了……我会留下这个,以防有人想反其道而行之。
  • 我在应用程序外部使用它。谢谢!
  • 我刚刚重新阅读了我的第一条评论,但这是错误的:我安装了 Windows SDK,重新启动了 PC 并且它工作正常。谢谢你的回答!
猜你喜欢
  • 2020-05-17
  • 1970-01-01
  • 2019-06-07
  • 1970-01-01
  • 2011-08-23
  • 2020-09-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多