偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何在Visual Studio中進(jìn)行XML編程

開發(fā) 后端
Visual Studio平臺(tái)的數(shù)據(jù)處理能力可以通過XML編程來提高。不過在這一平臺(tái)中使用XML編程還需要注意一些細(xì)節(jié),比如安全問題等等。

Visual Studio是進(jìn)行.NET應(yīng)用開發(fā)的必備工具,不但能生成ASP.NET Web應(yīng)用程序,還能在其中輕松實(shí)現(xiàn)Web Services應(yīng)用程序。XML(可擴(kuò)展標(biāo)記語言)是一種提供數(shù)據(jù)描述格式的標(biāo)記語言。與其他編程語言相比,其有很大的優(yōu)勢。如可以在多個(gè)平臺(tái)中進(jìn)行更加準(zhǔn)確的內(nèi)容聲明、更加容易的進(jìn)行檢索等等。今天我們來介紹如何在Visual Studio中進(jìn)行XML編程。

一、XML編程可以提高Visual Studio平臺(tái)中數(shù)據(jù)的處理能力。

與其把XML當(dāng)作一種可擴(kuò)展標(biāo)記語言,筆者更愿意把它叫做一種工具。這個(gè)工具可以提高Visual Studio平臺(tái)中數(shù)據(jù)的處理能力。正如文章開頭所說的,XML可以將后臺(tái)數(shù)據(jù)與表進(jìn)行分離。如此的話,兩者就可以分工合作。Visual Studio平臺(tái)只負(fù)責(zé)數(shù)據(jù)的邏輯處理,如邏輯運(yùn)算、條件判斷等等,而不需要關(guān)心其客戶端顯示的格式問題。而XML負(fù)責(zé)在客戶端如何顯示,如保留幾位小數(shù)、顯示哪些內(nèi)容、權(quán)限控制等等。術(shù)業(yè)有專攻,這么處理,就可以明顯提高Visual Studio平臺(tái)中應(yīng)用程序的數(shù)據(jù)處理能力。

二、使用XML編程工具時(shí)要注意安全問題。

雖然可以在Visual Studio平臺(tái)中實(shí)現(xiàn)XML編程語言,但是他們畢竟是不同的產(chǎn)品,其內(nèi)部的實(shí)現(xiàn)機(jī)制,如安全機(jī)制,有比較大的差異。為此要在這個(gè)Visual Studio平臺(tái)中使用XML工具的話,一些安全方面的問題需要引起程序開發(fā)人員的重視。

#T#如在使用XML編輯器的時(shí)候,需要注意類的執(zhí)行權(quán)限。XML編輯器是Visual Studio中實(shí)現(xiàn)XML的主要途徑。通常情況下,這個(gè)XML編輯器在系統(tǒng)初次加載時(shí)會(huì)自動(dòng)下載。那么如何下載這個(gè)XML編輯器才是安全的呢?一般情況下可以通過HTTP的方式下載。但是由于HTTP協(xié)議自身的缺陷(其不會(huì)對傳輸?shù)臄?shù)據(jù)進(jìn)行加密),故有時(shí)候出于安全方面的考慮,會(huì)對其進(jìn)行限制。用戶通??梢栽赬ML編輯器、雜項(xiàng)工具選項(xiàng)對話框中,設(shè)置是否需要禁用HTTP下載。

如在調(diào)試時(shí),需要給XSLT調(diào)試程序配置合適的權(quán)限。XSLT是在Visual Studio平臺(tái)中調(diào)試XML可擴(kuò)展標(biāo)記語言的工具。XSLT調(diào)試程序會(huì)在沙盒型應(yīng)用程序中對XML腳本語言進(jìn)行XSLT轉(zhuǎn)換。在轉(zhuǎn)換的過程中,出于安全方面的考慮,程序人員往往需要根據(jù)樣式表所在處的位置來指定一系列的安全策略。如來自互聯(lián)網(wǎng)的樣式表通常來說存在一定的安全隱患,此時(shí)就需要對其權(quán)限進(jìn)行限制。而對于來自用戶電腦上或者企業(yè)共享服務(wù)器上的樣式表,相對安全,可以采取完全信任的權(quán)限運(yùn)行。針對樣式表的不同位置設(shè)置不同的權(quán)限,則可以在***程度上保障安全與效率方面的均衡。

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

通過創(chuàng)建XML Web Services客戶端的形式來實(shí)現(xiàn)XML,是一個(gè)常用的便捷方法。XML Web Services客戶端是指使用SOAP消息與Web服務(wù)器進(jìn)行通信的組件和應(yīng)用程序。XML Web Services客戶端其實(shí)際的表現(xiàn)形式有兩種。一是通過網(wǎng)頁形式來實(shí)現(xiàn),即一個(gè)Web應(yīng)用程序;二是通過傳統(tǒng)的客戶端界面來實(shí)現(xiàn),即跟C/S模式下的客戶端類似,只是其采用的協(xié)議不同。那么該如何在Visual Studio平臺(tái)中建立XML Web Services客戶端呢?由于在Visual Studio中友好的集成了XML工具,所以要實(shí)現(xiàn)這個(gè)要求并不難。筆者認(rèn)為可以歸結(jié)為如下四個(gè)步驟來完成。

***步創(chuàng)建一個(gè)Web服務(wù)的代理類。在具體實(shí)現(xiàn)之前,程序開發(fā)人員要轉(zhuǎn)變一個(gè)觀念。即在實(shí)現(xiàn)XML編程工具的時(shí)候,其都是通過類來實(shí)現(xiàn)的。也就是說,VisualStudio中內(nèi)置了許多類,通過這些類來調(diào)用XML可擴(kuò)展標(biāo)記語言。了解這個(gè)前提,對于后面的開發(fā)具有很大的幫助。為此要?jiǎng)?chuàng)建XML Web Services客戶端的話,首先需要?jiǎng)?chuàng)建一個(gè)Web服務(wù)的代理類。

第二步在客戶端重對剛才創(chuàng)建的類進(jìn)行處理。如需要在客戶端代碼中引用剛才創(chuàng)建的代理類,并且需要?jiǎng)?chuàng)建這個(gè)代理類的一個(gè)實(shí)例。在引用代理類的時(shí)候,需要注意不同的客戶端類型,其引用的方式有所不同。在開發(fā)客戶端的時(shí)候,如果即要采用Web應(yīng)用程序作為客戶端,也需要傳統(tǒng)的C/S客戶端,那么在開發(fā)應(yīng)用程序中可能需要加入一個(gè)必要的判斷條件,以增強(qiáng)應(yīng)用程序的靈活性。舉一個(gè)簡單的例子,如開發(fā)一個(gè)郵件系統(tǒng)。其即可以直接通過網(wǎng)頁來訪問郵件,也可以通過outlook郵件客戶端來接收郵件。由于采取的客戶端類型不同,其代理類的引用方式也有所不同。此時(shí)服務(wù)器就需要判斷用戶采用的是哪種類型的客戶端。根據(jù)判斷的結(jié)果來確定所需要采用的引用方法。

第三步設(shè)置代理類的屬性與方法。一般情況下,對于代理類的屬性只要采用默認(rèn)的即可。但是有時(shí)候程序開發(fā)人員可能不允許匿名訪問。如一個(gè)電子商務(wù)系統(tǒng),一定要求用戶有合法的身份才可以訪問。此時(shí)就需要更改代理類的屬性(更改Credentials屬性)。這個(gè)屬性主要的作用就是用來獲取或者設(shè)置客戶端身份驗(yàn)證的安全憑據(jù)。如程序開發(fā)人員將這個(gè)屬性顯示設(shè)置為需要身份驗(yàn)證憑據(jù)時(shí),就會(huì)禁止用戶匿名訪問。設(shè)置完屬性之后,還需要對這個(gè)代理類調(diào)用與要與之進(jìn)行通信的Web服務(wù)設(shè)置相對應(yīng)的方法。這里需要注意一點(diǎn),跟代理類引用一樣,用戶所采用的客戶端類型不同,其方法也有所不同。對于有多個(gè)客戶端要求的應(yīng)用軟件來說,需要在設(shè)置的時(shí)候,加入一個(gè)判斷條件。根據(jù)用戶所采用的客戶端不同,對應(yīng)不同的方法。否則的話,無論是數(shù)據(jù)還是在顯示格式上,都會(huì)與實(shí)際的有所差異。

第四步就是對客戶端進(jìn)行調(diào)試。在調(diào)試的時(shí)候,除了要注意功能是否可以實(shí)現(xiàn)之外,還需要關(guān)注安全方面的問題。在上面的內(nèi)容中筆者強(qiáng)調(diào)過,需要根據(jù)XML樣式表的位置來設(shè)置不同的權(quán)限。這可以在保障安全性的同時(shí),提高應(yīng)用程序的效率。在調(diào)試與測試的過程中,有可能為出現(xiàn)“請求因HTTP狀態(tài)失敗:拒絕訪問”的錯(cuò)誤信息。很多新手在使用XML編程工具的時(shí)候,都會(huì)遇到這個(gè)問題。這主要是因?yàn)闄?quán)限上的錯(cuò)誤所造成的。如有可能是沒有將安全憑據(jù)傳遞給代理類的憑據(jù)緩存。

要解決這個(gè)問題的話,就需要對Windows身份驗(yàn)證模式進(jìn)行配置。如需要配置客戶端憑據(jù)并將這個(gè)憑據(jù)傳遞給使用各種形式的Windows身份驗(yàn)證的Web服務(wù)。身份驗(yàn)證是一項(xiàng)比較復(fù)雜的工作。在一個(gè)開發(fā)團(tuán)隊(duì)中,往往有專門的技術(shù)人員來負(fù)責(zé)這塊內(nèi)容,其主導(dǎo)這個(gè)應(yīng)用程序的整個(gè)安全機(jī)制。故具體采用哪種形式的身份認(rèn)證方式、如何才能夠安全的傳遞憑據(jù),這需要開發(fā)人員與安全技術(shù)人員共同協(xié)商實(shí)現(xiàn)。其一個(gè)主要的原則就是在保障安全的同時(shí),不要影響到應(yīng)用程序的性能。在實(shí)際工作中,經(jīng)常會(huì)遇到這種錯(cuò)誤。系統(tǒng)登陸的時(shí)候,速度特別慢。但是登陸以后,其速度就會(huì)有顯著的改善。這很大一方面原因,就是沒有在身份認(rèn)證與性能之間獲得一個(gè)平衡。這無形中就給用戶造成了不好的影響。

***筆者總結(jié)一下。在Visual Studio平臺(tái)中生成XML編程時(shí),主要需要注意兩點(diǎn)。一是用戶所采用的客戶端不同,其代理類的引用與對應(yīng)的方法有所差異。為了提高應(yīng)用程序的靈活性,在代碼中往往需要加入判斷條件?;蛘呔烷_發(fā)兩個(gè)不同類型的客戶端。二是安全固然重要,性能也不能夠忽視。在實(shí)際開發(fā)中,要避免登陸過程慢、后續(xù)操作快的誤區(qū)。

 

責(zé)任編輯:曹凱 來源: IT專家網(wǎng)
相關(guān)推薦

2017-10-16 08:07:22

2017-11-13 15:46:07

2025-02-10 10:29:32

2012-08-06 10:42:20

Java

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

2010-01-20 10:49:29

Visual C++界

2009-12-10 17:19:05

Visual Stud

2021-07-27 10:18:21

R語言視覺工作室代碼分析

2023-05-26 15:46:23

數(shù)據(jù)結(jié)構(gòu)布隆過濾器開發(fā)

2024-02-07 09:36:40

MySQL數(shù)據(jù)

2009-12-16 15:44:20

Visual Stud

2009-12-17 13:28:41

Visual Stud

2016-09-21 13:35:33

LinuxVimUbuntu

2024-02-27 12:42:38

開發(fā)前端

2010-02-26 09:18:24

Visual Stud

2009-12-15 14:44:24

Visual Stud

2012-09-19 21:59:57

IBM大型主機(jī)ELS數(shù)據(jù)整合
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)