///IConnection用于表示到數(shù)據(jù)源或數(shù)據(jù)目標(biāo)的連接///publicinterface" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

DTS開發(fā)記錄(3)-- 連接與連接對

系統(tǒng) 1930 0

DTS開發(fā)記錄(2)-- 數(shù)據(jù)管道及插件 一文中,我們介紹了數(shù)據(jù)管道,IDataPipeFactory的CreateDataPipe方法需要一個IConnection參數(shù),這個參數(shù)就表示一個連接。

public IDataPipeCreateDataPipe(IConnectionconn)

IConnection的定義如下:

/// <summary>
/// IConnection用于表示到數(shù)據(jù)源或數(shù)據(jù)目標(biāo)的連接
/// </summary>
public interface IConnection
{
ConnectionTypeConnectionType{
get ;}
string ConnectionText{ get ;}
string PKeyName{ get ; set ;}
}

public enum ConnectionType
{
DataBase,File
}

無論該連接是指向數(shù)據(jù)庫的一個表還是某個結(jié)構(gòu)化的文件,都需要設(shè)定一個主鍵名稱,設(shè)定該主鍵名稱的作用在于兩個方面:
(1)用于分頁(有的數(shù)據(jù)庫可能不需要知道主鍵就可以分頁,比如Oracle)
(2)用于增量導(dǎo)出。

到目前為止,連接分為兩種類型--數(shù)據(jù)庫類型和文件類型。對于數(shù)據(jù)庫類型的連接,可以用連接字符串來標(biāo)志;對于文件類型的連接,可以使用文件路徑來標(biāo)志。
我們知道,數(shù)據(jù)庫分為不同的類型,這是由DataBaseType標(biāo)志的;那么,文件也有不同的類型,比如.Xml、.Txt等,怎么區(qū)分它們了?是的,使用文件的擴展名,因為同一類型的文件的擴展名是相同的。所以,我們看到FileConnection有個ExtendName屬性。
ConnectionText屬性,就像ToString()方法一樣,這樣當(dāng)我們需要在UI上顯示IConnection時,可以取用其ConnectionText屬性的值。對于文件類型的連接,它將返回文件路徑;對于數(shù)據(jù)庫類型的連接,它將返回連接字符串及目標(biāo)數(shù)據(jù)表的名字。
下面是FileConnection和DatabaseConnection的類圖:

DTS開發(fā)記錄(3)-- 連接與連接對

講到這里,我可以大致說一下IDataPipeFactory創(chuàng)建數(shù)據(jù)管道的過程。首先,從IConnection中獲取ConnectionType,如果是文件類型,則將之向下轉(zhuǎn)換到FileConnection,然后得到ExtendName屬性,最后在數(shù)據(jù)管道插件列表中尋找支持該ExtendName的數(shù)據(jù)管道插件。對于數(shù)據(jù)庫類型的IConnection,過程也是相似,只不過,它是依據(jù)DataBaseType來尋找對應(yīng)的數(shù)據(jù)管道插件。
如果和數(shù)據(jù)管道插件對照起來看,就更清楚了:
DTS開發(fā)記錄(3)-- 連接與連接對


連接對(ConnectionPair),一個連接對包含了一個數(shù)據(jù)源和一個數(shù)據(jù)目標(biāo)的連接信息。將連接對獨立出來的好處是,當(dāng)配置好一個連接對后,可以在不同的地方復(fù)用它,比如在編輯映射的時候、在數(shù)據(jù)驗證的時候、在數(shù)據(jù)傳送的時候等。
DTS開發(fā)記錄(3)-- 連接與連接對

使用ConnectionPair可以使我們的程序結(jié)構(gòu)非常的清晰,因為它抽象了底層的連接類型。但是,在通過界面來配置ConnectionPair時,就不那么容易了,你會迫不得已的遇到很多向下轉(zhuǎn)換,我正在思考一種解決方案來避免這種向下轉(zhuǎn)換。你有好的想法嗎?


轉(zhuǎn)到: DTS開發(fā)記錄(序)

DTS開發(fā)記錄(3)-- 連接與連接對


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美成人精品一区二三区在线观看 | 亚洲综合资源 | 亚洲精品在线网站 | 国内精品久久久久香蕉 | 5g天天爽影院 | 亚洲免费精品视频 | 五月婷婷色播 | 成人亚洲精品7777 | 国产日韩精品一区在线不卡 | 全部免费的毛片在线看青青 | 四虎免费在线观看 | 色在线国产 | 中日韩欧美中文字幕毛片 | 九九热在线免费观看 | 欧美一区欧美二区 | 亚洲日日 | 国产精品无码久久综合网 | 国产精品免费在线播放 | 亚洲精品国产精品国自产观看 | 被公侵犯肉体中文字幕一区二区 | 中文字幕亚洲视频 | 久久成人小视频 | 91亚洲精品国产自在现线 | 在线久综合色手机在线播放 | 免费成人高清视频 | 香蕉亚洲 | 国产精品国色综合久久 | 鲁啊鲁啊鲁在线视频播放 | 99国产精品久久久久久久日本 | 性做久久久久久久久25的美女 | 91九色视频 | 成熟的女性强烈交性视频 | 日本人在线看片 | 97福利影院| 九月婷婷亚洲综合在线 | 一级美国乱色毛片 | 国产成人高清视频免费播放 | 奇米影视9999 | 成人观看视频 | 免费在线观看福利 | 亚洲国产精品婷婷久久久久 |