ASP.NET中表单的XSD元素

ASP.NET中表单的XSD元素,asp.net,webforms,xsd,input,elements,Asp.net,Webforms,Xsd,Input,Elements,是否有一种将XSD转换为输入表单(ASP.NET C#)的标准方法,以便以后在XSD中添加/删除新字段时,页面上的字段会自动显示或分别消失,这是需要在内部开发的东西吗?我认为必须有一种方法来序列化/反序列化并生成表单?任何帮助都将受到欢迎。假设:您使用XML是因为目前它对您来说更简单 想法:既然您想创建一个表单来操作数据,我猜您可能会对SQL而不是XML开放。情况可能并非如此,但如果您有一个数据库后端而不是XML/XSD后端,您可能会发现更多的工具来帮助您。(此外,还有一些方法可以将数据从一个转

是否有一种将XSD转换为输入表单(ASP.NET C#)的标准方法,以便以后在XSD中添加/删除新字段时,页面上的字段会自动显示或分别消失,这是需要在内部开发的东西吗?我认为必须有一种方法来序列化/反序列化并生成表单?任何帮助都将受到欢迎。

假设:您使用XML是因为目前它对您来说更简单

想法:既然您想创建一个表单来操作数据,我猜您可能会对SQL而不是XML开放。情况可能并非如此,但如果您有一个数据库后端而不是XML/XSD后端,您可能会发现更多的工具来帮助您。(此外,还有一些方法可以将数据从一个转换为另一个)

ASP.NET中有一些从数据库创建表单的工具。例如,亚音速有一个自动支架模块,可以让您创建一个只知道其模式的数据库管理器。如果模式发生更改,只需让亚音速重新生成其文件,您的表单就会被修改。它并不完美,但根据你的需要,它可能会走很长的路

选项1)您可以从XSD()创建数据库模式,并从该点开始使用亚音速。这可能比你原来的问题更痛苦。。。只有你知道

选项2)破解亚音速支架,使其支持底层XSD/XML而不是数据库。您可能可以重用他们的许多基础设施(亚音速是开源的)从XSD生成表单


祝你好运

我不认为有什么内置的东西可以让它完全自动化。然而,你可以非常接近。Visual Studio包含一个名为xsd.exe的命令行程序,可用于从xsd文档自动创建类定义。一旦有了该类定义,就可以通过ObjectDataSource组件和DetailsView控件将其连接到表单。

好吧,我不得不说ObjectDataSource不是一个坏主意,但如果有嵌套元素,这就行不通了。除此之外,对于嵌套元素,在DetailsView中还将包含所有“.FieldSpecified”布尔字段

我仍在试图弄清楚如何使用XSD文件生成ASP.NET表单,而不必键入所有内容,这是一项很简单的工作

有人遇到过这个问题吗

PS:另一种方法是使用InfoPath,但这需要许可软件作为webforms运行