以编程方式从 XML 或 XSD 生成 C# class

Generating C# class from XML or XSD programatically

我在生产中有一个后端应用程序,需要在应用程序接收到 XMLs 的每次更新后连续更新 XSD 和 C# classes。我正在尝试编写一个我可以 运行 的 C# 代码,它会自动更新 XSD 和 C# classes 所以我不必自己覆盖它(有每个月都有许多新的或更新的字段,并且需要验证)。

我设法编写了一个从新 XML 生成 XSD 的代码,但还没有看到任何能够创建 C# class 的(开源)实用程序基于其中之一的对象。我知道我可以使用以下内容:

Process.Start("....xsd.exe", params)

但是,解决方案应该对更多用户通用,xsd.exe的路径对每个人来说都不相同。

你对我应该如何处理有什么建议吗?

毕竟我设法写了一个通用的 .bat 文件,它在所有需要的 xsds 上调用 xsd.exe,就像这样

for /R %%f in (*.xsd) do (
xsd /c "%%f" /outputdir:..\Objects /n:DataSource.Main.xsd.Objects)

和 运行 以编程方式处理此文件。此解决方案的唯一缺点是您需要将 xsd.exe 添加到您的 PATH。