Automatically generate XSD to C# in Visual Studio

2020-02-16 12:00发布

I am running Visual Studio 2010. I have a XSD schema and want to use xsd.exe tool to generate appropriate C# file. I have done this successfully from a command line but now I want to do the same from IDE.

Is there some well-known route for this? I have managed to use a pre-build event but I hate to have the tool running on each build. Normally, it should only run when XSD changes.

Adding the generated .cs file to project puts it under .xsd of the same name, so the IDE knows they are related.

I know I can set "Custom Tool" on my .xsd but I am not sure if that achieves the desired effect. I was hoping for a more straightforward way.

And ultimately, VS2010 cannot execute XSD.EXE because it lives in the SDK folder and the path known to VS obviously does not include it.

Any suggestions are welcome!

2条回答
叼着烟拽天下
2楼-- · 2020-02-16 12:33

You can check out Xsd2Code for a VS addin that does this interactively. The author is also working on a VS2010 version, as far as I know.

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

查看更多
戒情不戒烟
3楼-- · 2020-02-16 12:33

You can also add it as an external tool (click tools - external tools...) to visual studio (2015). Then just select the xsd schema in visual studio and click tools - xsd to generate the class file.

adding xsd as an external tool

Parameters:

  • Command: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.7.1 Tools\xsd.exe (replace with your version of FX tools)
  • Arguments: /c "$(ItemDir)$(ItemFileName)$(ItemExt)"
  • Initial directory: $(ItemDir)
  • Use Output window: yes
查看更多
登录 后发表回答