如何在Visual Studio中进行XML编程

开发 后端
Visual Studio平台的数据处理能力可以通过XML编程来提高。不过在这一平台中使用XML编程还需要注意一些细节,比如安全问题等等。

Visual Studio是进行.NET应用开发的必备工具,不但能生成ASP.NET Web应用程序,还能在其中轻松实现Web Services应用程序。XML(可扩展标记语言)是一种提供数据描述格式的标记语言。与其他编程语言相比,其有很大的优势。如可以在多个平台中进行更加准确的内容声明、更加容易的进行检索等等。今天我们来介绍如何在Visual Studio中进行XML编程。

一、XML编程可以提高Visual Studio平台中数据的处理能力。

与其把XML当作一种可扩展标记语言,笔者更愿意把它叫做一种工具。这个工具可以提高Visual Studio平台中数据的处理能力。正如文章开头所说的,XML可以将后台数据与表进行分离。如此的话,两者就可以分工合作。Visual Studio平台只负责数据的逻辑处理,如逻辑运算、条件判断等等,而不需要关心其客户端显示的格式问题。而XML负责在客户端如何显示,如保留几位小数、显示哪些内容、权限控制等等。术业有专攻,这么处理,就可以明显提高Visual Studio平台中应用程序的数据处理能力。

二、使用XML编程工具时要注意安全问题。

虽然可以在Visual Studio平台中实现XML编程语言,但是他们毕竟是不同的产品,其内部的实现机制,如安全机制,有比较大的差异。为此要在这个Visual Studio平台中使用XML工具的话,一些安全方面的问题需要引起程序开发人员的重视。

#T#如在使用XML编辑器的时候,需要注意类的执行权限。XML编辑器是Visual Studio中实现XML的主要途径。通常情况下,这个XML编辑器在系统初次加载时会自动下载。那么如何下载这个XML编辑器才是安全的呢?一般情况下可以通过HTTP的方式下载。但是由于HTTP协议自身的缺陷(其不会对传输的数据进行加密),故有时候出于安全方面的考虑,会对其进行限制。用户通常可以在XML编辑器、杂项工具选项对话框中,设置是否需要禁用HTTP下载。

如在调试时,需要给XSLT调试程序配置合适的权限。XSLT是在Visual Studio平台中调试XML可扩展标记语言的工具。XSLT调试程序会在沙盒型应用程序中对XML脚本语言进行XSLT转换。在转换的过程中,出于安全方面的考虑,程序人员往往需要根据样式表所在处的位置来指定一系列的安全策略。如来自互联网的样式表通常来说存在一定的安全隐患,此时就需要对其权限进行限制。而对于来自用户电脑上或者企业共享服务器上的样式表,相对安全,可以采取完全信任的权限运行。针对样式表的不同位置设置不同的权限,则可以在***程度上保障安全与效率方面的均衡。

三、如何在Visual Studio 中生成XML Web Services客户端。

通过创建XML Web Services客户端的形式来实现XML,是一个常用的便捷方法。XML Web Services客户端是指使用SOAP消息与Web服务器进行通信的组件和应用程序。XML Web Services客户端其实际的表现形式有两种。一是通过网页形式来实现,即一个Web应用程序;二是通过传统的客户端界面来实现,即跟C/S模式下的客户端类似,只是其采用的协议不同。那么该如何在Visual Studio平台中建立XML Web Services客户端呢?由于在Visual Studio中友好的集成了XML工具,所以要实现这个要求并不难。笔者认为可以归结为如下四个步骤来完成。

***步创建一个Web服务的代理类。在具体实现之前,程序开发人员要转变一个观念。即在实现XML编程工具的时候,其都是通过类来实现的。也就是说,VisualStudio中内置了许多类,通过这些类来调用XML可扩展标记语言。了解这个前提,对于后面的开发具有很大的帮助。为此要创建XML Web Services客户端的话,首先需要创建一个Web服务的代理类。

第二步在客户端重对刚才创建的类进行处理。如需要在客户端代码中引用刚才创建的代理类,并且需要创建这个代理类的一个实例。在引用代理类的时候,需要注意不同的客户端类型,其引用的方式有所不同。在开发客户端的时候,如果即要采用Web应用程序作为客户端,也需要传统的C/S客户端,那么在开发应用程序中可能需要加入一个必要的判断条件,以增强应用程序的灵活性。举一个简单的例子,如开发一个邮件系统。其即可以直接通过网页来访问邮件,也可以通过outlook邮件客户端来接收邮件。由于采取的客户端类型不同,其代理类的引用方式也有所不同。此时服务器就需要判断用户采用的是哪种类型的客户端。根据判断的结果来确定所需要采用的引用方法。

第三步设置代理类的属性与方法。一般情况下,对于代理类的属性只要采用默认的即可。但是有时候程序开发人员可能不允许匿名访问。如一个电子商务系统,一定要求用户有合法的身份才可以访问。此时就需要更改代理类的属性(更改Credentials属性)。这个属性主要的作用就是用来获取或者设置客户端身份验证的安全凭据。如程序开发人员将这个属性显示设置为需要身份验证凭据时,就会禁止用户匿名访问。设置完属性之后,还需要对这个代理类调用与要与之进行通信的Web服务设置相对应的方法。这里需要注意一点,跟代理类引用一样,用户所采用的客户端类型不同,其方法也有所不同。对于有多个客户端要求的应用软件来说,需要在设置的时候,加入一个判断条件。根据用户所采用的客户端不同,对应不同的方法。否则的话,无论是数据还是在显示格式上,都会与实际的有所差异。

第四步就是对客户端进行调试。在调试的时候,除了要注意功能是否可以实现之外,还需要关注安全方面的问题。在上面的内容中笔者强调过,需要根据XML样式表的位置来设置不同的权限。这可以在保障安全性的同时,提高应用程序的效率。在调试与测试的过程中,有可能为出现“请求因HTTP状态失败:拒绝访问”的错误信息。很多新手在使用XML编程工具的时候,都会遇到这个问题。这主要是因为权限上的错误所造成的。如有可能是没有将安全凭据传递给代理类的凭据缓存。

要解决这个问题的话,就需要对Windows身份验证模式进行配置。如需要配置客户端凭据并将这个凭据传递给使用各种形式的Windows身份验证的Web服务。身份验证是一项比较复杂的工作。在一个开发团队中,往往有专门的技术人员来负责这块内容,其主导这个应用程序的整个安全机制。故具体采用哪种形式的身份认证方式、如何才能够安全的传递凭据,这需要开发人员与安全技术人员共同协商实现。其一个主要的原则就是在保障安全的同时,不要影响到应用程序的性能。在实际工作中,经常会遇到这种错误。系统登陆的时候,速度特别慢。但是登陆以后,其速度就会有显著的改善。这很大一方面原因,就是没有在身份认证与性能之间获得一个平衡。这无形中就给用户造成了不好的影响。

***笔者总结一下。在Visual Studio平台中生成XML编程时,主要需要注意两点。一是用户所采用的客户端不同,其代理类的引用与对应的方法有所差异。为了提高应用程序的灵活性,在代码中往往需要加入判断条件。或者就开发两个不同类型的客户端。二是安全固然重要,性能也不能够忽视。在实际开发中,要避免登陆过程慢、后续操作快的误区。

 

责任编辑:曹凯 来源: IT专家网
相关推荐

2012-08-06 10:42:20

Java

2017-10-16 08:07:22

2017-11-13 15:46:07

2010-01-05 13:47:43

Jquery Json

2011-08-01 18:52:26

ActiveDirecOU

2009-12-10 16:50:58

Visual Stud

2015-09-01 11:40:21

LinuxVisual Stud

2021-07-27 10:18:21

R语言视觉工作室代码分析

2016-09-21 13:35:33

LinuxVimUbuntu

2010-01-20 10:49:29

Visual C++界

2009-12-10 17:19:05

Visual Stud

2012-09-19 21:59:57

IBM大型主机ELS数据整合

2023-05-26 15:46:23

数据结构布隆过滤器开发

2024-02-07 09:36:40

MySQL数据

2009-12-16 15:44:20

Visual Stud

2009-12-17 13:28:41

Visual Stud

2024-02-27 12:42:38

开发前端

2009-12-15 14:44:24

Visual Stud

2010-02-26 09:18:24

Visual Stud

2009-12-16 14:51:27

Visual Stud
点赞
收藏

51CTO技术栈公众号