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

Visual Studio 2010層架構(gòu)驗(yàn)證的實(shí)現(xiàn)

  當(dāng)設(shè)計(jì)一個(gè)應(yīng)用程序時(shí),基本的要求是所有的通信信息交互都要通過定義的接口進(jìn)行,不能讓應(yīng)用程序直接調(diào)用該接口的類別或方法。所以,可以通過Layer Diagram來展示這個(gè)架構(gòu)上的想法。

  我們將使用一段非常簡單的代碼,主要強(qiáng)調(diào)的是代碼所代表的概念,而不是代碼的細(xì)節(jié)。并將在現(xiàn)有代碼層關(guān)系架構(gòu)邏輯設(shè)計(jì)分析的基礎(chǔ)上進(jìn)行層驗(yàn)證(Layer Validation)功能:

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

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

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

圖5  文檔編輯窗口和Solution Explorer

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

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

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

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

  現(xiàn)在“using Interfaces”已經(jīng)自動(dòng)添加好了。再次選中這個(gè)圖標(biāo),不過這次選擇“Implement interface ‘IDataRetriever’”命令,可自動(dòng)生成“DataRetriever”代碼文件。如上所示,創(chuàng)建了一個(gè)對象,調(diào)用了對象的一個(gè)屬性,然后拋出一個(gè)“NotImplementedException”異常,程序描述了一個(gè)實(shí)際系統(tǒng)中經(jīng)常遇到的問題。

  ⑧接下來向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技術(shù)Visual Studio 2010層架構(gòu)驗(yàn)證的實(shí)現(xiàn),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 乱码中字在线观看一二区 | 国产免国产免费 | 亚洲一卡二卡三卡四卡无卡麻豆 | 久久视频精品38在线播放 | 翘臀后进美女白嫩屁股视频 | 花蝴蝶高清影视视频在线播放 | 找老女人泻火对白自拍 | 国产高清国内精品福利色噜噜 | 国产精品JIZZ视频免费 | 日韩在线中文字幕无码 | 欧美成人momandson| 国产精品路线1路线2路线 | 久久www免费人成_看片高清 | 一个吃奶两个添下面H | 哒哒哒影院在线观看免费高清 | 日韩a在线看免费观看视频 日韩a视频在线观看 | 成人国产一区 | 美女裸露胸部100%无遮挡 | 777精品久无码人妻蜜桃 | 香蕉久久夜色精品国产小说 | 免费视频国产在线观看网站 | 免费果冻传媒2021视频 | 亚洲乱亚洲乱妇在线观看 | 国产成人综合网在线观看 | 亚洲精品天堂自在久久77 | 国产精品久久久久久久久久免费 | 精品视频免费在线观看 | 嫩B人妻精品一区二区三区 内射一区二区精品视频在线观看 | 跳蛋按摩棒玉势PLAY高H | 真人女人无遮挡内谢免费视频% | 一个人免费播放高清在线观看 | 摸董事长的裤裆恋老小说 | 肉肉高潮液体高干文H | 亚洲中文字幕无码一去台湾 | 99精品热视频30在线热视频 | 国产在线精品亚洲另类 | 亚洲精品动漫免费二区 | 大胸美女被cao哭 | 亚洲免费人成在线视频观看 | 在线视频 国产精品 中文字幕 | 国产精品一区二区资源 |