天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

Visual Studio 2010層架構驗證的實現

  當設計一個應用程序時,基本的要求是所有的通信信息交互都要通過定義的接口進行,不能讓應用程序直接調用該接口的類別或方法。所以,可以通過Layer Diagram來展示這個架構上的想法。

  我們將使用一段非常簡單的代碼,主要強調的是代碼所代表的概念,而不是代碼的細節。并將在現有代碼層關系架構邏輯設計分析的基礎上進行層驗證(Layer Validation)功能:

  ①打開Visual Studio 2010,通過Modeling Projects模板指定解決方案(Solution)的名稱為LayerValidation(File|New|Project命令,選擇ModelingProject,命名為LayerValidation),并提供創建一個名為“Client”的C#控制臺程序,單擊“OK”按鈕。

  ②在解決方案瀏覽器中,使用鼠標右鍵單擊Solution節點,選擇“New Project…”命令,在彈出的對話框中選擇“Class Library”并將工程命名為“Implementation”。

  ③重復以上幾步,創建名為“Interfaces”和“Creators”的Class Library工程。展開Interfaces工程節點,用鼠標右鍵單擊Class1.cs,選擇“Rename”命令,將該文件重命名為“IDataRetriever.cs”,并在彈出的對話框中選擇“Yes”。文檔編輯窗口和Solution Explorer如圖5所示。

圖5  文檔編輯窗口和Solution Explorer

  ④把class的關鍵字改為interface,將IDataRetriever變成一個接口。為IDataRetriever添加一個get屬性,該屬性返回一個IData類型的對象。在IData下面有紅色波浪線,表示IData不存在。Visual Studio 2010的新功能可以自動解決這個問題:用鼠標右鍵單擊出錯的IData,選擇“Generate”命令,然后選擇“Other…”命令,將看到一個“New Type”對話框。將其中的“Access:”修改為“public”,將“Kind:”修改為“interface”,其他的保留默認設置,單擊“OK”按鈕。VS會自動向Interfaces工程添加一個IData.cs文件,并在文件中創建一個名為IData的接口。

  ⑤展開Implementation工程節點,用鼠標右鍵單擊References節點,選擇“Add Reference…”命令,在彈出的對話框中選擇Projects頁,然后選擇Interfaces工程,單擊“OK”按鈕。

  ⑥將Class1.cs重命名為DataRetriever.cs。打開DataRetriever.cs文件,修改DataRetriever類使其實現IDataRetriever接口。當輸入IDataRetriever的時候沒有出現智能輸入支持,可以手動輸入IDataRetriever,然后會發現IDataRetriever下面又出現了紅色波浪線。將鼠標移動到IDataRetriever上,會注意到在這個單詞開始的位置下方有一個方形的小圖標。單擊它并選擇“using Interfaces;”命令,它會自動為你添加所需的using語句,如圖6所示。 

圖6  自動化提示添加代碼語句(名字空間)

  現在“using Interfaces”已經自動添加好了。再次選中這個圖標,不過這次選擇“Implement interface ‘IDataRetriever’”命令,可自動生成“DataRetriever”代碼文件。如上所示,創建了一個對象,調用了對象的一個屬性,然后拋出一個“NotImplementedException”異常,程序描述了一個實際系統中經常遇到的問題。

  ⑧接下來向Client工程中添加到Implementation和Interfaces工程的引用。打開Client工程中的Program.cs文件,參考代碼如下:

   using System;  
using System.Collections.Generic;
.
using System.Linq;
using System.Text;
using Implementation;
using Interfaces;

namespace Client
{
class Program
{
static void Main(string[] args)
{
DataRetriever dr
= new DataRetriever();
IData data
= dr.Data;
}
}
}

NET技術Visual Studio 2010層架構驗證的實現,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 97免费人妻在线观看 | 亚洲视频免费在线观看 | 亚洲性爱城 | 视频成人app永久在线观看 | 亚洲国产中文字幕在线视频综合 | CHINA篮球体育飞机2022网站 | 亚洲精品国偷拍自产在线 | 看了n遍舍不得删的黄文 | 我半夜摸妺妺的奶C了她软件 | 噜噜噜狠狠夜夜躁精品 | 恋夜秀场支持安卓版全部视频国产 | 麻豆最新免费版 | 小草高清视频免费直播 | 亚洲人交性视频 | 肉动漫h黄动漫日本免费观看 | 大学生第一次破女在线观看 | 视频成人永久免费下载 | 好男人好资源在线观看免费视频 | 男总裁憋尿PLAY灌尿BL | 99精品视频在线观看 | 超碰视频在线观看 | 91天堂国产在线 在线播放 | 国产精品美女久久久网站动漫 | 一本大道香蕉中文在线视频观看 | 果冻传媒在线观看进入窗口 | 国产精品久久久久久搜索 | 视频区 国产 欧美 日韩 | 嗯啊哈啊好棒用力插啊 | 国产欧美日韩中文视频在线 | 大学生第一次破女在线观看 | 国产性色AV内射白浆肛交后入 | 姉调无修版ova国语版 | 国产精品亚洲欧美一区麻豆 | 大香网伊人久久综合网2020 | 伊人久99久女女视频精品免 | 脔到她哭H粗话HWWW男男动漫 | 久久综合香蕉久久久久久久 | 亚洲国产在线精品第二剧情不卡 | 成人手机在线观看 | 亚洲欧美中文字幕高清在线 | 午夜阳光影院在线观看视频 |