2017年11月10日 星期五

GridViewScroll 新版已釋出

終於想到新方法進行改版,新版本不再相依於jQuery,而且使用TypeScript開發.



新版功能多了"固定頁尾",而且使用瀏覽器預設的捲軸.

相關連結如下:

http://gridviewscroll.aspcity.idv.tw/
https://github.com/twlikol/GridViewScroll

2015年2月4日 星期三

部署功能與Team Foundation Server整合

在前幾篇中的說明,我們已經可以很容易將開發完成的程式包裝為壓縮檔(WebFeature),並直接使用上傳或WCF服務方式來進行部署的作業.不過如果當需要部署的檔案或網站太多還是使得整個程序有點繁複.

因此我們整合了Team Foundation Server,透過客製化TFS建置程序來進行部署的作業.下圖則為功能的架構:



Deployment Center
用來預先定義所需的基本設定(TFS伺服器,組建定義,功能定義)的網站,並包含了一個用來接收部署功能結果的WCF服務.當需要進行部署時,也是由這個網站來執行.

Team Foundation Server
設定組建定義,並透過客製化的Process Template來處理部署服務.


Target Web Site
部署的目標網站,包含了一個用來接收部署壓縮檔的WCF服務,來進行檔案的部署動作.

整個流程順序如上圖所示,在Deployment Center中直接建立部署需求傳送給TFS,TFS將根據所需的組建定義來進行建置作業,並在建置的過程中,依照需求中的檔案與網站來進行部署作業,並在部署過程中傳送佈署結果回Deployment Center.


Deployment Center基本上也是一個可以透過上述部署作業的網站平台,僅是多增加了一個接收部署結果的服務,基本的操作畫面如下:

1. 設定所需的Team Foundation Server


2. 設定需要部署的目標網站


3. 設定TFS中的組建定義


4. 設定可部署功能項目並設定所在的組建定義


5. 部署功能項目基本資料


6. 部署功能預設的目標網站


7. 部署功能的紀錄


在Deployment Center中,可直接選擇功能與目標網站進行快速部署:



當部署完成後,我們可以在網站中查詢相關的紀錄,也可以直接從TFS的建置紀錄中看到結果:

2014年11月11日 星期二

開發VisualStudio擴充功能建構自己的開發環境(三)

完成了佈署機制時,我發現了一個很現實的問題,當我把壓縮檔案佈署到測試環境時如果發生了錯誤,我必須要手動的方式附加IIS處理序,才有辦法進行程式碼的偵錯.

這對我來說實在是一個很麻煩的步驟,開發一個功能可能就要重複很多次這樣的動作,對整體的開發經驗來說非常的不便.

當時我正準備要開發一個Project SubType,我發現其實可以透過它來自定專案偵錯的方式.因此也解決了這個煩人的問題.

當你按下F5進行偵錯時,Visual Studio其實做了Build -> Deploy -> Debug這三個動作,因此可以在自行定義的Project SubType中,提供自己想要的處理方式.例如:Windows Forms就會執行編譯好的執行檔來偵錯,而Web專案就會啟動一個瀏覽器的執行緒,這都是透過不同的Project SubType來負責導引.

透過自定Project SubType就可以做到像下圖一樣的設定

1. 設定按下F5後的相關動作(Build, Deploy, Debug)
2. 自定專案的屬性頁面
3. 變更在方案總管中的項目圖示
4. 設定選擇專案時,屬性視窗中要選擇的項目



相關文章:
開發VisualStudio擴充功能建構自己的開發環境(一)
開發VisualStudio擴充功能建構自己的開發環境(二)