我的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