我的Webservice正在返回包含1个表的数据集,其中包含135列。 我需要建立一个模型类(在C#中),它应该有135个列名作为类的属性名称。将数据集转换为模型类
有什么办法可以使用文件流编写器&构建我的课程?
注意:我可以很容易地将数据集转换为XML,但后来我做了大量的复制粘贴工作来手动创建类。 :(
我的Webservice正在返回包含1个表的数据集,其中包含135列。 我需要建立一个模型类(在C#中),它应该有135个列名作为类的属性名称。将数据集转换为模型类
有什么办法可以使用文件流编写器&构建我的课程?
注意:我可以很容易地将数据集转换为XML,但后来我做了大量的复制粘贴工作来手动创建类。 :(
我建议你看看脚手架您可以在这里下载:。
ASP.Net MVC Scaffold Generator
MVC脚手架生成器是新的ASP.NET MVC 框架CRUD代码生成器。
MVC脚手架生成器允许您快速创建基本 添加/编辑/删除/列表Asp.NET页面。
您还可以在这里观看截屏:
ASP.Net MVC Scaffold Generator screencast
这里是一个微软演练:
其实有办法把XML转换成类在C#:
http://sharpertutorials.com/using-xsd-tool-to-generate-classes-from-xml/
但是,如果XML来自数据集的默认序列化,那么它可能看起来很可怕。
非常真实。生成的班级有太多额外的不必要的信息。 – Biki
@Biki你可以用它来获得课程的大部分,并将其修剪为属性。 –
我有另一种方法是以下所列各项:
步骤1:将您的数据集到一个XML文档:
var xmlSW = new System.IO.StreamWriter(@"c:\xml\Krishna.xml");
myDataset.WriteXml(xmlSW, System.Data.XmlWriteMode.WriteSchema);
xmlSW.Close();
步骤2:转换XML文档到文档XSD。
-> Open Visual Studio Command Promt.
-> Type : xsd c:\xml\Krishna.xml (that is the path of the xml file.
对于例如: C:\ Windows \ System32下> XSD C:\ XML \ krishna.xml 微软(R)XML模式/数据类型的支持效用 [微软(R)的.NET Framework 4.0版.30319.1] 版权所有(C)Microsoft Corporation。版权所有。 写入文件'C:\ Windows \ system32 \ krishna.xsd'。
第3步:将您的xsd转换为C#类。
-> Open Visual Studio Command Promt.
-> Type : xsd krishna.xsd /classes
对于例如: C:\ Windows \ System32下> XSD krishna.xsd /类 微软(R)XML模式/数据类型的支持效用 [微软(R).NET Framework版本4.0.30319.1]版权所有(C)Microsoft公司。版权所有。 写入文件'C:\ Windows \ system32 \ krishna.cs'。
注意:生成的属性名称可以通过Resharper或类似工具正确重命名(如果不正确)。
输出类文件可能包含一些您需要清理的不必要信息。 所以这种方法是适用的,如果你的数据集在回荡包含数百个列的巨大表格&你不想复制手动粘贴所有这些来创建你自己的映射类。
一旦获得结构(类),就可以使用XmlSerializer将其转换为对象或反之亦然。
对不起尼尔,我认为脚手架不会帮助我从数据集或XML文档创建c#类。 – Biki