让Visual Studio 2013为你自动生成XML反序列化的类
Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性。如:
1. 在代码编辑界面的右侧滚动条上显示不同颜色的标签,让开发人员可以对所编辑文档的修改、查找、定位情况一目了然。而不用像往常一样上下不停地拖动滚动条来定位到某一行,如果代码量很大,上下拖动滚动条着实让人很头疼。
2. 括号、代码换行自动完成。在代码编写的过程中,输入左括号Visual Studio会自动帮你完成右括号,如果你不小心主动输入了右括号,也没有关系,Visual Studio会自动进行整理。代码编辑的智能程度比之前的版本有所提高。
3. 每一个类或方法前面会自动添加references的数量,点击之后可以直接查找工程中哪些地方有引用,非常直观。
4. 还有许多优化。
Visual Studio 2013用得不太多,所以许多新增的功能只能以后慢慢再发掘。这里介绍一个很有用的功能,自动生成XML反序列化的类。以往想要在代码中将XML反序列化成对象,我们要么手动创建这些对象(很容易出错),要么借助于第三方的工具来生成Class。而现在,Visual Studio 2013可以自动帮我们完成这个工作。当然,如果你对XML反序列化并不感兴趣,而热衷于使用XElement或者XMLDocument来加载和解析XML,那么你可以忽略本文的内容。
来看看在Visual Sutdio 2013中如何使用这个功能!
1. 创建一个工程,或者打开现有的工程。必须要有一个工程啊!不然所生成的Classes如何编译和运行呢?
2. 新建一个XML文件,输入你希望的内容。如:
<?xml version="1.0" encoding="utf-8"?> <Cars><Car><StockNumber>1020</StockNumber><Make>Nissan</Make><Model>Sentra</Model></Car><Car><StockNumber>1010</StockNumber><Make>Toyota</Make><Model>Corolla</Model></Car><Car><StockNumber>1111</StockNumber><Make>Honda</Make><Model>Accord</Model></Car> </Cars>
3. 全选整个XML文件的内容,Ctrl+C复制。
4. 创建一个.cs文件或打开工程中现有的.cs文件,将光标定位到你要创建一个Class的地方。
4. 选择Edit->Paste Special->Paste XML As Classes,OK!你会看到Visual Studio已经为你生成好了反序列化的Classes。
很方便吧!你可以对生成的Classes做任何修改,包括修改属性和对象的名称以及类型,修改代码逻辑和包含关系等。但有一点需要注意!反序列化的类必须要能匹配所对应的XML文档的结构,否则在代码中进行反序列化操作时会失败。下面这个方法通过反序列化上面给出的XML,找出对应makeName的CarsCar对象。
public static CarsCar GetCar(string makeName) {string xmlFilePath = "c:\\XMLFile1.xml";Cars cars = null;XmlSerializer serializer = new XmlSerializer(typeof(Cars));using (FileStream fs = new FileStream(xmlFilePath, FileMode.Open)){using (XmlReader reader = XmlReader.Create(fs)){cars = (Cars)serializer.Deserialize(reader);}}if (cars != null){CarsCar car = cars.Car.Where(n => n.Make == makeName).FirstOrDefault();if (car != null){return car;}}return null; }
让Visual Studio 2013为你自动生成XML反序列化的类相关推荐
- visual studio 2019 HTML怎么自动生成代码_分享代码——巩敦卫等IST论文
分享代码:巩敦卫等IST论文:A feedback-directed method of evolutionary test data generation for parallel programs ...
- visual studio 2019 HTML怎么自动生成代码_敲代码和编程适合什么样的笔记本?深度推荐...
导读:编程,实际上范围还是很广的,有简单的PLC也算编程.Excel表格还自带VB,有复杂的系统插件,:我们说电脑配置,还是要落实到应用程序或者开发程序上面来,不能泛泛而谈: 1.我们聊聊编码的大众逻 ...
- Visual Entity 下载列表(最新版为 2.0.0 ,已支持Visual Studio 2013)
常见问题: http://www.cnblogs.com/ansiboy/archive/2011/04/06/2006839.html 发展线路: 2.x 将支持的功能有: 1.增加重构功能.当修改 ...
- windows7+visual studio 2013+CUDA7.5 编译caffe+配置matcaffe+配置pycaffe
经过朋友指导,终于成功在windows7上成功编译了caffe,这里将编译过程记录 安装文件准备 1 visual studio 2013安装包下载 2 CUDA75 optional 3 windo ...
- visual studio 2013 编译DCMTK3.6.3
之前编译过DCMTK的3.6.0版本,现在再次打开不知为什么编译不过了,应该是不小心删掉了文件或者移动了目录.决定再编译一个最新版本. 在我公司的办公电脑上按照上面的步骤生成工程文件时,总是在conf ...
- Visual Studio 2013新功能介绍
提高开发人员工作效率的新功能 Visual Studio 2013 预览版根据客户反馈和 Microsoft"重点关注于内容"的核心设计准则对用户界面的许多方面做出改进,从而改善了 ...
- Visual Studio 2013 简体中文破解版
vs2013(Visual Studio 2013)是一款微软出品的编程开发工具,软件提供了UML工具.代码管控工具.集成开发环境(IDE)等一系列编程插件,可以满足团队在项目开发中的大部分需求:vs ...
- vs2013建立html页面,使用 Visual Studio 2013 创建基本 ASP.NET 4.5 Web 窗体页
使用 Visual Studio 2013 创建基本 ASP.NET 4.5 Web 窗体页 03/03/2014 本文内容 对于新的 web 应用程序开发,我们建议 Razor Pages. 有关详 ...
- Blend for Visual Studio 2013
软件开发中为了使设计师和程序员"并行"工作并直接参与到程序的开发中来. 1.在网络程序开发团队中,草图设计后,设计师们可以使用HTML.CSS.JavaScript直接生成UI,程 ...
最新文章
- “神人”or“闲人”?你的未来由AI与大数据决定
- 利用JDK工具进行系统性能监测
- 【存储技术大杂烩】谈谈FC-SAN、IP-SAN、DAS、NAS几种存储技术
- web service security profile的设计
- [有限元] DistMesh Matlab 程序示例
- 体验Visual Studio 2015 Windows Forms应用程序开发与维护
- Android对话框动态加载布局
- idea tomcat启动乱码问题
- 雨滴win7计算机路径,win7雨滴桌面秀 Raindrop Desktop Show教程_计算机软件和应用程序_IT /计算机_信息...
- 《遥感原理与应用》总结—遥感图像几何处理
- 介绍一个可以轻松下载病毒样本的数据库
- 共赴开源路,共筑新丰碑!2022云栖大会龙蜥操作系统峰会圆满落幕!
- web多媒体技术在视频编辑场景的应用
- 客户端架构设计的简单总结
- 腾讯云服务器增加网卡,腾讯云服务器(CVM主机)绑定多个弹性网卡和IP地址的方法...
- Qt 字符编码转换(UTF-8 转换为 GBK) \u7528\u6237\u672a\u7b7e\u7ea6
- 读书笔记《底层逻辑2·理解商业世界的本质》
- 程序化广告欺诈流量过滤方法
- 了解面部识别的不同算法
- ExtraCHM 1.5破解版和破解教程:
热门文章
- video.min.js php,在WordPress中使用videojs来播放七牛私有空间视频
- Android通过透明度设置背景变暗
- 台积电放大招:甩开英特尔 7nm和5nm芯片将诞生
- activemq 安全连接
- Servlet 应用程序事件、监听器
- 数据库比较工具SQL Delta
- Tcpdump 详解
- 扫描java类文件_java递归与非递归实现扫描文件夹下文件的实例代码
- linux查看python环境变量_Linux中添加PYTHONPATH配置anaconda环境变量方法
- 在数据采集器中用TensorFlow进行实时机器学习