Chapter 01 Chapter 02epaper.gotop.com.tw/pdf/CMS101400.pdf · 98-363 1-2 MTA Exam...
Transcript of Chapter 01 Chapter 02epaper.gotop.com.tw/pdf/CMS101400.pdf · 98-363 1-2 MTA Exam...
i
目錄
目錄
Chapter 01 網站研發工程師核心能力認證
1-1 MTA微軟國際認證介紹 ......................................................... 1-2 1-2 認證科目 ................................................................................. 1-4 1-3 重點問題摘錄 ......................................................................... 1-6 1-4 網站研發工程師核心能力認證 .............................................. 1-11
Chapter 02 開發網頁應用程式
2-1 VWD開發環境簡介 ................................................................ 2-2 2-2 網頁的版面安排 ...................................................................... 2-4 2-3 基本控制項 ............................................................................. 2-9 2-4 狀態管理 ............................................................................... 2-20 2-5 事件處理 ............................................................................... 2-26 2-6 進階控制項 ........................................................................... 2-29 2-7 Web 組態設定檔 ................................................................... 2-34 本章習題 ........................................................................................ 2-39
Chapter 03 資料與網路服務
3-1 讀寫 XML 資料....................................................................... 3-2 3-2 比較 DataSet 和 DataReader 物件............................................ 3-4 3-3 從網頁呼叫 service ................................................................. 3-5 3-4 熟悉資料來源 ....................................................................... 3-17 3-5 資料繫結控制項 .................................................................... 3-20 3-6 使用資料來源控制項 ............................................................. 3-27 3-7 SQL Server資料庫補充.......................................................... 3-31 本章習題 ........................................................................................ 3-32
Chapter 04 偵錯與例外處理
4-1 網頁應用程式的除錯 ............................................................... 4-2 4-2 例外處理 ................................................................................. 4-5 本章習題 ........................................................................................ 4-14
i i
MTA Exam 98-363 網站研發認證實戰寶典(C#)
Chapter 05 使用者端指令應用
5-1 使用者端指令 ......................................................................... 5-2 5-2 AJAX 概念 ............................................................................. 5-7 本章習題 ........................................................................................ 5-16
Chapter 06 設定與部署網站應用程式
6-1 驗證與授權 ............................................................................. 6-2 6-2 專案的相關設定 ...................................................................... 6-6 6-3 部署網站應用程式 ................................................................ 6-12 6-4 應用程式集區 ....................................................................... 6-16 本章習題 ........................................................................................ 6-18
Chapter 07 MTA 認證模擬試題
7-1 模擬試題一 ............................................................................. 7-2 7-2 模擬試題二 ........................................................................... 7-13 7-3 模擬試題三 ........................................................................... 7-25 7-4 模擬試題四 ........................................................................... 7-35 7-5 模擬試題五 ........................................................................... 7-46 7-6 模擬試題六 ........................................................................... 7-57 7-7 模擬試題七 ........................................................................... 7-68 7-8 模擬試題八 ........................................................................... 7-79 7-9 模擬試題九 ........................................................................... 7-91 7-10 模擬試題十 ......................................................................... 7-102
附錄 詞彙整理
網站研發工程師 核心能力認證 (Web Developer Fundamentals)
1-1 MTA 微軟國際認證介紹
1-2 認證科目
1-3 重點問題摘錄
1-4 網站研發工程師核心能力認證
01
1 -2
MTA Exam 98-363 網站研發認證實戰寶典(C#)
1. Microsoft Technology Associate ( MTA ) 國 際 認 證 由
Microsoft 與知名國際認證機構 Certiport 合作推出,共有 19 種
語言,通行 128 個國家。
2. MTA 是培養 IT 專業人員及程式開發人員知識基礎,亦是獲得
Microsoft 認可的技術專家證照的跳板。
3. 專業社群-讓學生,有機會與超過五百萬位 MCP 會員的專業
人士交流。
證照優勢
1. MTA 核心認證,將可減少未來五到十年 IT 工作類群,40%人
力資源缺口的專業技能。
2. 由原廠 Microsoft 核發之國際證書。
3. 人力銀行網站調查,最受歡迎的技能。
證照級別
以理解 IT 核心知識及核心技能之應用為認證之目標。
MTA微軟國際認證介紹 1-1
1 -3
網站研發工程師核心能力認證
考試方式
1. 各科均為中文考題,採線上即測即評方式,並立即產生成績
報告。
2. 考試的核心能力範圍,涵蓋 80%資訊專業知識與 20%的技能。
3. 考試時間:45 Min / 單、複選擇題共 35 題。
4. 通過認證:滿分 100 分,合格分數為 70 分。
5. MTA 國際認證證書,有效期限為五年。
1 -4
MTA Exam 98-363 網站研發認證實戰寶典(C#)
MTA 國際認證考試涵蓋三大資訊領域,七大核心科目
系統研發工程師(Developers)考試科目
軟體研發工程師核心能力(Software Developer Fundamentals, 98-361)
認證 內容
軟體研發知識與技術、程式設計知識
與技術、物件導向程式設計、網頁應
用程式研發、桌上應用程式研發、資
料庫
適用 軟體
Visual Studio 2008(VB/C#)
視窗研發工程師核心能力(Windows Developer Fundamentals, 98-362)
認證 內容
視窗程式設計原理、視窗表單應用程
式、建立 WPF 應用程式、視窗服務應用程式、視窗表單程式資料存取、
發佈視窗應用軟體
適用 軟體
Visual Studio 2008
網站研發工程師核心能力(Web Developer Fundamentals, 98-363)
認證 內容
網頁應用程式的研發、資料與服務的
運作、客戶端程式碼的運作、網頁程
式發佈/設定、網頁應用程式的維護與問題解決
適用 軟體
Visual Studio 2008(VB/C#)
資料庫管理師(Database)考試科目
資料庫管理師核心能力(Database Administration Fundamentals, 98-364)
認證 內容
資料庫的核心觀念、建立資料庫物
件、處理資料(Manipulating data)、資料儲存的方式、管理資料庫
適用 軟體
SQL Server 2008
認證科目 1-2
1 -5
網站研發工程師核心能力認證
資訊技術專業工程師(IT Professionals)考試科目
伺服器管理工程師核心能力
(Windows Server Administration Fundamentals, 98-365)
認證 內容
伺服器安裝方法、伺服器的功能角
色、Active Directory、儲存裝置、伺服器效能管理、伺服器維護
適用 軟體
Windows Serve 2008
網路管理與應用工程師核心能力(Networking Fundamentals, 98-366)
認證 內容
網路核心能力建立、網路硬體、網
路協定與服務 適用 軟體
Windows Server 2008
網路安全管理師核心能力(Security Fundamentals, 98-367)
認證 內容
安全層次、作業系統安全、網路安
全、安全軟體 適用 軟體
Windows Server 2008
1 -6
MTA Exam 98-363 網站研發認證實戰寶典(C#)
Q: 通過 MTA 國際認證有什麼好處?
A: 獲取 MTA 國際認證是邁向微軟認可的技術專家(MCTS)的第一
步,擁有一張 MTA 國際認證,即可成為「微軟合格專業社群」的
一員;可以擁有會員獨享的優惠利益,如特定的提案內容、成績
工具、新聞群組服務、找到同好的協助,以及與全世界數以百萬
計的 MCP 成員分享經驗。
Q: 要取得 MTA 國際認證需要通過多少科考試?
A: 只要通過一個考試科目,就可以獲取一張 MTA 國際認證。
Q: 如果通過一科以上的 MTA 國際認證考試以後呢?
A: 通過 MTA 國際認證後,建議繼續成為微軟認證的技術專家
MCTS,讓資訊職涯更上一層樓。
Q: MTA 國際認證的重考政策是?
A: MTA 國際認證的重考政策與微軟的技術/專業認證系列是一致的,
學校若是有簽訂 MTA 校園授權方案,可於授權範圍內自行決定。
Q: 我可以獲得哪些教學資源來準備 MTA 國際認證考試?
A: (1) 請上網查閱 MTA 國際認證考試準備指南一覽表及學習路徑
http://www.microsoft.com/learning/en/us/certification/ mta.aspx#certification
(2) 購買 MTA 校園授權者,會提供 MTA 國際認證考試教學資源
套件(ERKs)
(3) 若您是教師,可在微軟教師聯繫網站上獲得額外資源
http://www.microsoft.com/education/facultyconnection/ default.aspx?c1=en-us&c2=0
重點問題摘錄 1-3
1 -7
網站研發工程師核心能力認證
Q: 可以在哪裡考 MTA 國際認證考試?
A: MTA 國際認證考試,目前僅提供給學術機構的學生與教職員。如
果您的學校已經登記為 Certiport 的 MTA 考試中心,且註冊通過
成為 MTA 國際認證考試的監考或是管理身分,則學校老師或是監
考人員(proctor)可依規範隨時安排 MTA 考試。
如果您的學校尚未註冊為 MTA 國際認證考試的的監考或是管理身
分,學校的科系主管或是老師,可以聯繫「碁峰資訊股份有限公
司的 MTA 服務人員」,詢問關於實施 MTA 申請考場或是認證考
試的細節。
Q: 每一個認證考試科目有多少題目?
A: MTA 國際認證每科考試題目約 35 題。
Q: 考試時間有多長?
A: 考試時間是 45 分鐘。
Q: 什麼時後會收到考試結果?
A: 線上考試完成後,馬上就可看分數與考試結果,考生也可登入
www.certiport.com 查看分數報告。
Q: 通過考試後,考生如何拿到 MTA 國際認證的證書?
A: 目前 MTA 是沒有提供紙張證書,僅能透過網路線上下載取得電子
證書(E-certificate),您可以在「微軟認證專業網站」下載任何
您 的 微 軟 證 照 。 造 訪 「 微 軟 認 證 專 業 網 站 」
http://mcp.microsoft.com/ ;登入這個網站需要您的 Windows Live 帳號與您的微軟認證帳號連結。
1 -8
MTA Exam 98-363 網站研發認證實戰寶典(C#)
Q: 考生可以在哪裡取得認證的成績報告?
A: 任何微軟證照成績報告均可以在「微軟認證專業網站」查看。登
入這個網站需要 Windows Live 帳號與微軟認證帳號做連結,才能
查看成績報告。如果是透過 Certiport 考試的科目,亦可以在
Certiport 網站查詢到您的成績單。
Q: 如何將微軟認證帳號跟我的 Windows Live 帳號連結在一起?
A: 在通過微軟認證的第一科,考生將會收到一封 email 通知考生的
微軟認證帳號,同時會有詳細說明指示如何操作與 Windows Live 帳號進行連結。必須完成兩個帳號連結手續,才能登入微軟認證
專業網站(http://mcp.microsoft.com/)。
如果有疑問,請打臺灣微軟客服中心:0800-008833
Q: MTA 國際認證考試的語言有中文嗎?
A: 有的,MTA 國際認證考試已提供繁體中文試題,並已經正式上線。
Q: MTA 國際認證考試分數的計算方式?
A: 所有 MTA 國際認證考試的評量通過分數是 70 分。一個常見的誤
解是考生以為必須回答所有題目的 70%正確才能通過;然而,正
確的百分比是隨認證科目不同而有所不同,可能高或低於 70%。
當您完成考試,您回答正確的題數會與門檻分數比較後,判斷出
考試結果通過與否。
1 -9
網站研發工程師核心能力認證
Q: MTA 考試分數如何計算?
A: (1) 沒有倒扣;任何題目答錯就沒有分數,並不會倒扣。
(2) 複選題題目,您需要完全選對所有答案,才能獲得該題分數;
只有答對部分是無法獲取分數。
(3) 有些題目並未納入分數計算的範圍;為了收集資料改善考試的
品質,我們會放些新的內容讓考生試做,這些題目並不會納入
最後計分的範圍。
Q: 如何解讀分數報告?
A: 所有 MTA 國際認證考試滿分為 100 分,設定及格分數為 70 分;
高於 70 分則通過考試,低於 70 分則不通過。成績報告上之直條
圖,將說明該科內每個項目的對應成績;直條圖愈長,表示您在
這個項目的表現成績愈好。請考生登入 www.certiport.com 查看
分數報告。
Q: 每一題目的比重相同嗎?
A: 每個題目、項目或模擬都是一樣的比重,不管您有沒有回答這個
題目。
Q: 猜錯會有倒扣嗎?
A: 沒有,答錯題不會扣分。如果您的答案是錯的,只是無法獲得分
數而已。
Q: 某個單元我成績是零分,有可能嗎?
A: 每一單元的題數是由各專業科目的主題式命題專家群所決定的;
因此,有些科目的題數會比其他科目多。當一個科目的題數較少
時,就很有機會得到零分。
1 -10
MTA Exam 98-363 網站研發認證實戰寶典(C#)
Q: MTA 國際認證與 Cisco 認證有何不同?
A: Cisco CCNA 僅提供初級認證給想要成為網路技術人員者,Cisco以這些技術人員,在網路學習或相關工作經驗的前三年,作為檢
定專業程度,而非評量其核心或基礎概念;再者,Cisco 考試沒有
對應任何平台,僅將重點放在 Cisco 網路設備。除此之外,Cisco並沒有提供校園授權認證服務方案,學生必須在任何 Pearson VUE 測驗中心進行認證考試。Cisco 考試費用約 250 元美金,比
MTA 國際認證要貴,尤其與 MTA 校園授權方案所收取的費用比
較,Cisco 認證費用就更高了。
Q: 為何微軟要推薦一個與 CompTIA 類似的認證?
A: 一直以來微軟認可 CompTIA 認證,並建議初學者以此選考科目
協助其準備微軟後續的專業認證,例如 MCSE ( Microsoft Certified Systems Engineer ) 及 MCSA ( Microsoft Certified Systems Administrator)證照。然而,學校單位反應需要一個微軟
重要基礎性的核心認證作為通往 MCTS 的直接管道,可以讓學
生,有一個清楚的規劃路徑;此外,學術機構需要較經濟且容易
在教室操作的國際認證。這就是為何微軟導入 MTA 國際認證,此
認證專為學校、教師及學生的教育訓練與認證需求,所設計的 IT專業技能的核心課程與評量標準。
1 -11
網站研發工程師核心能力認證
認證內容:網頁應用程式的研發、資料與服務的運作、客戶端程
式碼的運作、網頁程式發佈 /設定、網頁應用程式的維護與問題
解決。
網站研發工程師核心能力(Web Developer Fundamentals, 98-363)
認證
內容
網頁應用程式的研發、資料與服務的運
作、客戶端程式碼的運作、網頁程式發
佈/設定、網頁應用程式的維護與問題解決。
適用
軟體
Visual Studio 2008
(VB/C#)
MTA 協助學校老師教學與確認學生應具備的網路管理技術與知
識,提供學生面對未來職涯所需要具備的基本能力,以及增加繼續升
學研究的自信心。
MTA 提供學校創新精神的技術課,讓學生有機會在校即可獲取 Microsoft 國際證照的機會。
IDC 調查未來五到十年 MTA 國際認證將可減少 40%IT 職務的缺
口,也是人力銀行網站調查最受歡迎的工作技能,無論是資訊相關科
系的老師與學生或程式設計人員、電腦遊戲設計師、作業系統人員、
教育工作者、電子商務等工作族群,通過 MTA 認證,將是取得 IT 職
務的最佳捷徑。
網路時代,全球無國界,考一張已翻譯成 19 種語言,通行 128 個
國家的國際級證照,為自己加分,更可以為未來取得更多競爭優勢,
準備 MTA 網站研發工程師核心能力證照,是一個好的開始。
資料來源: http://www.microsoft.com/taiwan
http://www.gotop.com.tw
網站研發工程師核心能力認證 1-4
資料與網路服務
3-1 讀寫 XML 資料
3-2 比較 DataSet 和 DataReader 物件
3-3 從網頁呼叫 service
3-4 熟悉資料來源
3-5 資料繫結控制項
3-6 使用資料來源控制項
3-7 SQL Server 資料庫補充
03
3 -2
MTA Exam 98-363 網站研發認證實戰寶典(C#)
可延伸標記語言(Extensible Markup Language, XML)讓使用者可
以根據需要自行建立標籤,讓網頁更具可讀性。以下是我們自行建立
的標籤,
<?xml version="1.0"?>
<PersonData>
< People ID="001">
<Name>Charley</Name>
<Age>30</Age>
<Height>160</Height>
</People>
</PersonData>
XML 標籤的命名規則如下:
區分大小寫
以字母或底線開頭
可包含字母、數字、連字號、底線和句點。(不包含空白!)
XML 標籤是成對的,有開始標籤,必定有結束標籤。開始標
籤與結束標籤之間可存放資料。
讀寫 XML 資料 3-1
3 -3
資料與網路服務
有些字元可能使 XML 剖析器錯誤解譯文件結構時,請使用實
體 參 考 (Entity Reference) 。 例 如 You&Me , 可 寫 成
You&Me;b>c,可寫成 b>c。
字元 實體參考
< (小於) <
> (大於) >
& (連字號) &
' (單引號) '
" (雙引號) "
資料來源: http://msdn.microsoft.com/zh-tw/library/ms256190.aspx
3 -4
MTA Exam 98-363 網站研發認證實戰寶典(C#)
DataReader
適用資料筆數龐大,效率高、速度快
順向:只能順向讀取資料,無法逆向,所以不支援分頁
唯讀:資料是唯讀的,不能更新資料庫
DataSet
較耗資源:會建立資料庫快取,存放在主機的記憶體中
但功能強大,支援快取、分頁與動態排序
配合 WriteXml 將資料表序列化(Serialization),可離線處理
資料
兩者沒有絕對的好壞,視需求和時機來判斷何時用DataReader或 DataSet。
DataSourceMode 屬性 優點 缺點
DataReader 較快速 不支援快取、分頁與動
態排序
DataSet 支援快取、分頁與動態
排序 速度較慢
比較 DataSet 和 DataReader 物件 3-2
3 -5
資料與網路服務
服務(service)
是以 XML 格式將資料傳回的應用程式
參與的有服務提供者(Service Provider)與服務需求者(Service Requester)
但需求者怎麼認識提供者呢?透過服務仲介者(Service Broker)
SOA(Service-Oriented Architecture, 服務導向架構)
服務仲介者(Service Broker)、服務提供者(Service Provider)、與服務需求者(Service Requester)。
服務提供者在服務仲介者登記提供的服務(註冊服務)。
服務需求者在服務仲介者中找到需要的服務,並且找到服務提
供的方法、傳遞的參數、與回傳的參數(發現服務)。
服務需求者透過 SOAP 訊息呼叫服務;服務提供者認證服務需
求者擁有服務使用的權限之後,處理服務需求者的請求,並將
執行結果透過 SOAP 傳回給服務需求者進行處理(呼叫服務)。
1. 網路服務著重於這一段。
2. 微軟提供 ASP.NET Web Service 與 WCF 等技術實作出網
路服務,一般都先設計服務提供者,接著設計服務需求者
試著呼叫設計的服務。
從網頁呼叫 service 3-3
3 -6
MTA Exam 98-363 網站研發認證實戰寶典(C#)
SOAP (Simple Object Access Protocol, 簡單物件存取協定)
SOAP 是 XML 格式。
服務提供者與服務需求者透過 SOAP 傳遞訊息。
ASP.NET Web Service
服務的通訊透過 SOAP。
將 WebMethod 屬性套用至公用方法稱為 Web 服務方法。
1. 可透過網路服務提供服務需求者呼叫。
2. 沒有 WebMethod 屬性的方法無法提供服務需求者呼叫,只
能夠提供相同服務(類別)的方法呼叫。
服務仲介者 (Service Broker)
服務需求者 (Service Requester)
服務提供者 (Service Provider) 呼叫
發掘 登記
3 -7
資料與網路服務
建立網路服務的步驟
建立 HelloWorldService 專案
1. 「檔案」→「新增」→「專案」。
2. 專案類型請選擇「Web」類型,Framework 版本請選擇
「.NET Framework 3.5」,專案範本請選擇「ASP.NET Web Service 應用程式」(「.NET Framework 4」不提供這個範
本)。
3. 「名稱」請輸入「HelloWorldService」。
4. 開啟「 Service1.asmx 」,可以知道這個服務的名稱是
「 Service1 」 ( 服務名稱即類別名稱 ) ,預設提供一個
HelloWorld 的 Web 服務方法(將 WebMethod 屬性套用至公
用方法稱為 Web 服務方法)。
新增 SayHello 與 Greeting 方法並且在網頁中測試
3 -8
MTA Exam 98-363 網站研發認證實戰寶典(C#)
將 HelloWorld 這個 Web 服務方法刪除,新增以下程式碼。
1. 新增 SayHello 與 Greeting 這兩個方法(第 21~29 行)。
SayHello 會呼叫 Greeting,並且帶入 stringName 為參
數,並且回傳執行結果。
由於 Greeting 沒有 WebMethod 屬性,因此無法在 Web服務中被使用,如果想讓 Greeting 方法能夠在 Web 服
務 中 被 使 用 , 只 要 在 Greeting 方 法 前 面 加 上
WebMethod 屬性即可
3 -9
資料與網路服務
2. 選擇 Service1.asmx 並且「在瀏覽器中檢視」,我們可以看
到服務名稱 Service1 提供的方法 SayHello。
這個網址最主要的目的是讓我們加入 Web 參考,提供
其他程式呼叫,待會我們將知道如何使用這個服務,接
下來我們先藉由這個畫面測試剛剛寫得程式是否正確。
3 -10
MTA Exam 98-363 網站研發認證實戰寶典(C#)
3. 在 SayHello 方法之中需要傳遞參數給 Web 服務,我們可以
在「值」的輸入方框內,輸入 stringName 的參數值,在這
裡我們輸入 Elf,並且按下「叫用」按鈕。
4. 此時會回傳字串型別的參數「Hello, Elf」,符合我們預期
的執行結果。
3 -11
資料與網路服務
在現有的方案之中加入 CallHelloWorldService 專案
1. 「檔案」→「新增」→「專案」。
2. 專案類型請選擇「Web」類型,Framework 版本請選擇
「.NET Framework 3.5」,專案範本請選擇「ASP.NET Web應用程式」。
3. 「名稱」請輸入「CallHelloWorldService」。
在 CallHelloWorldService 專案上按下滑鼠右鍵,選擇「加入
Web 參考」,出現以下畫面選擇「這個方案中的 Web 服務」
1. 此時會列出這個方案之中包含那些服務,目前方案只包含
Service1 這個服務,請選擇 Service1。
3 -12
MTA Exam 98-363 網站研發認證實戰寶典(C#)
2. 在「加入 Web 參考」的最後步驟之中,設定 Web 參考名稱
為 ServiceReference1,最後點選「加入參考」。
3. 在方案總管會新增 Web References 資料夾,資料夾內可以
看到我們剛剛建立的 Web 參考「ServiceReference1」。
3 -13
資料與網路服務
在 CallHelloWorldService 專案中加入 Default.aspx,並且加入
以下控制項。
1. 加入以下控制項並且設定以下屬性
TextBox
屬性 值
ID TextBoxName
Button
屬性 值
ID ButtonSayHello
Text Hello
Label
屬性 值
ID LabelSayHello
2. 在 ButtonSayHello 加入 Click 事件,並且輸入以下程式
碼 , 我 們 希 望 按 下 ButtonSayHello 之 後 , 將
TextBoxName.Text 的值做為 SayHello 的參數值,並且將
執行結果顯示在 LabelSayHello 上。(第 19~20 行)
3 -14
MTA Exam 98-363 網站研發認證實戰寶典(C#)
測試 Default.aspx。
1. 將 CallHelloWorldService 專案「設定為起始專案」,並且
將 Default.aspx「在瀏覽器中檢視」,可以看到以下畫面。
2. 請在輸入框輸入您的名字,在這裡我們輸入「Elf」,並且
按下 Hello 按鈕,右手邊的 Label 就會換成「 Hello, Elf」。
請注意這個範例雖然 Web 服務在同一個方案之內,可
能 Web 服務會在網路的其他位置,但是使用的方法都
一樣,很像在呼叫本地端的服務。
3 -15
資料與網路服務
服務
用戶端
A CBABC
Address(位址) 服務位於何處
Binding(協定繫結)如何存取該服務?
Contract(合約) 該服務提供哪些功能
資料
WCF (Windows Communication Foundation)
為服務與用戶端之間的協定,抽象地說明要交換資料
服務會提供一或多個端點(Endpoint)來讓用戶端存取
端 點 由 ABC 三 項 組 成 , 即 位 址 (Address) 、 協 定 繫 結
(Binding)、與合約(Contract)。
A:位址(Address),服務位於何處
B:協定繫結(Binding),如何存取該服務
C:合約(Contract),該服務提供哪些功能/操作
例如:某服務提供計算應繳所得稅的查詢,
A:服務位於 http://taxCalculation/location
B:使用 TCP 協助,加密傳輸
C:回傳該年度應繳所得稅額
3 -16
MTA Exam 98-363 網站研發認證實戰寶典(C#)
合約(Contract):用來定義雙方溝通的協定,合約必須要以介面
的方式來呈現,而實際的服務程式碼必須要由這些合約介面衍生並實
作,分成以下幾種:
資料合約(Data Contract):訂定雙方溝通時的資料格式,這
些資料型別可以用於訊息的任何部分,例如做為參數或傳回型
別。如果服務使用自訂資料型別,雙方必須明確定義資料合
約;如果服務只使用簡單型別,就不需要明確使用資料合約。
服務合約(Service Contract):訂定服務的定義,使用介面描
述服務提供哪些功能/操作,服務合約會將多個相關營運合約
結合起來,也就是一個服務提供多個方法供使用者呼叫,藉由
實作介面即可產生實際服務程式碼。
營運合約(Operation Contract):訂定服務提供的方法。
訊息合約(Message Contract):描述 SOAP 訊息的格式,可
細部控制 SOAP 標頭與本文,例如可以決定將資料置於 SOAP標頭或 SOAP 本文之中。
錯誤合約 (Fault Contract):描述特定的例外 (Exception)型別,讓用戶端也能以 try...catch 的結構化例外處理方式直接捕
捉服務端自訂的例外。事實上,在定義錯誤合約時,就是用資
料合約的方式描述 Exception 型別。
資料來源: http://msdn.microsoft.com/zh-tw/library/dd456781.aspx
http://zh.wikipedia.org/zh-tw/Windows_Communication_Foundation
http://blogs.msdn.com/b/polo_lee/archive/2007/03/16/soa-wcf.aspx
http://huan-lin.blogspot.com/2009/02/wcf-concept-map.html
http://sites.google.com/site/stevenattw/dot-net/wcf/wcf-essentials
3 -32
01.( ) 有一個 XML 檔案包含下列程式碼。
<?xml version="1.0"?>
<Employee Record>
<Employee>User One</Employee>
</Employee Record>
當這個 XML 檔案被讀入 XML 資料物件時發生錯誤,原因是:
(1) <Employee Record>包含空格
(2) <Employee Record>與<Employee>包含大寫字母
(3) User One 包含空格
(4) User One 未以引號括住
02.( ) 一個 XML 文件包含以下代碼。
<?xml version="1.0"?>
<Employ Record>
<Employee>User One</Employee>
</Employ Record>
將 XML 文件讀入 XML 數據對象時,出現錯誤,這是由於:
(1) <Employ Record>包含空格
(2) <Employ Record>和<Employ>包含大寫字母
(3) User One 包含空格
(4) User One 沒有用引號引起來
3 -33
03.( ) 有一個 XML 檔案包含下列程式碼。
<?xml version="1.0"?>
<rules>
<rule>salary<1000</rule>
</rules>
當這個檔案被讀入 XML 資料物件時發生錯誤。
(1) salary<1000 包含空格
(2) salary<1000 包含小於符號
(3) salary<1000 未以引號括住
(4) salary<1000 包含未以引號括住的小於符號
04.( ) 一個網頁有一個下拉式清單。您需要將該清單繫結至來自不
同伺服器資料庫的資料。您的方案必須使用 Web 伺服器上最
小量的記憶體資源。您應該使用哪一種資料物件?
(1) DataList
(2) DataLoad
(3) DataReader
(4) DataSet
05.( ) Web 服務以哪種格式將資料傳回應用程式?
(1) 十六進位
(2) HTML
(3) XAML
(4) XML
3 -34
06.( ) Web 服務端點是:
(1) Web 服務的結束狀態
(2) 可收發訊息的位址
(3) 可能會由幾個部分組成的獨立資料單位
(4) 訊息處理後的儲存位置
07.( ) Windows Communication Foundation (WCF)資料合約是:
(1) 說明要使用之通訊協定的文件
(2) 說明要交換資料加密方式的文件
(3) 服務與用戶端之間的協定(抽象地說明要交換資料)
(4) 服務與用戶端之間的協定(抽象地說明資料查詢技術)
08.( ) Windows Communication Foundation(WCF)數據協定是一種:
(1) 文檔,描述要使用的協議
(2) 文檔,描述對要交換的數據的加密
(3) 服務與客戶端之間的協議,抽象的描述要交換的數據
(4) 服務與客戶端之間的協議,抽象的描述數據查詢技術
09.( ) 有一個 Web 服務有下列 URL:
http://www.contoso.com/DataService/Products.asmx
Products.asmx 頁面的目的是要:
(1) 讓您能夠定義 Web 服務的端點
(2) 讓您能夠使用查詢字串參數呼叫該 Web 服務
(3) 提供測試和記錄該 Web 服務方法的位置
(4) 提供將 Web 服務參考加入至您應用程式的指示
3 -35
10.( ) 一個 Web 服務使用以下 URL:
http://www.contoso.com/DataService/Products.asmx
Products.asmx 頁面的用途是:
(1) 使您能為該 Web 服務定義終結點
(2) 使您能使用查詢字符串參數調用該 Web 服務
(3) 提供測試和紀錄該 Web 服務方法的位置
(4) 提供將該 Web 服務引用添加到您應用程序的說明
11.( ) 有一個 Web 服務包含下列程式碼。
public class Service1 : System.Web.Services.WebService
{
public string GetVerse(int page)
{
return arrVerse(page);
}
}
您需要在 Web 服務中公開該方法。您應該怎麼辦?
(1) 將類別範圍從 public 變更為 web
(2) 將方法範圍從 public 變更為 web
(3) 將類別加入至 System.Web 命名為空間
(4) 使用 WebMethod 屬性裝飾該方法
12.( ) WCF 服務的 ABC 即位址(Address)、協定繫結(Binding)、與
什麼?
(1) 合約(Contract)
(2) 連結(Connection)
(3) 條件(Condition)
(4) 取消(Cancel)
3 -36
13.( ) WCF 之中可以描述 SOAP 訊息的格式,可細部控制 SOAP 標
頭與本文的合約為何?
(1) 資料合約
(2) 訊息合約
(3) 錯誤合約
(4) 服務合約
14.( ) 您需要使用單一的語法來查詢多種不同的對象,例如資料
庫、XML、與 DataSet,您需要使用什麼技術?
(1) SQL
(2) XQuery
(3) JQuery
(4) LINQ
15.( ) 除 SQL Server 身分驗證外,混合模式身分驗證還支持哪種類
型的身分驗證?
(1) ASP
(2) IIS
(3) 純文字
(4) Windows
16.( ) <%#...%>語法是用來:
(1) 搭配 LINQ.dbml 檔案
(2) 搭配資料繫結運式
(3) 存取 web.config 檔案的<appSettings>區段
(4) 存取 web.config 檔案的<connectionStrings>區段