做了一個 Excel 2007 的範本 (*.xlsx),原本這樣載入:
using (FileStream fsIn = new FileStream(strXlsTemplate, FileMode.Open))
{
做了一個 Excel 2007 的範本 (*.xlsx),原本這樣載入:
using (FileStream fsIn = new FileStream(strXlsTemplate, FileMode.Open))
{
故事是這樣:有個客戶給了我一個子網域(假設它叫 ap.veronica.idv.tw 好了),讓我放一個活動網站在上頭。隔了一陣子以後,客戶覺得這個子網域不夠望文生義,所以又設了一個子網域(假設叫做 coolsite.veronica.idv.tw),同時給我另一個空間,要我把網站複製一份過去,這麼一來如果 coolsite.veronica.idv.tw 運作有問題,他只要把首頁上的活動網站連結改成指向 ap.veronica.idv.tw 就好了。
事隔一年半載以後,客戶寫信給我,問我為什麼同時可以在 Google 的搜尋結果看到 ap.veronica.idv.tw 和 coolsite.veronica.idv.tw,我解釋是因為兩台機器都還存在的關係,所以搜尋引擎自然能夠搜爬到兩個網址的內容。
他告訴我,因為 ap.veronica.idv.tw 已經經營一段時間,因此他怕還有使用者會透過這個網址連到網站。為了讓這些人不迷路,他問我短期內有沒有可能還是能繼續使用舊域名連結到網站?
過去都是透過資料庫備分,將客戶端資料庫主機的資料打包回開發端使用。但是從去年開始,客戶新採購的機器都已經是 SQL server 2008,但我手邊部分機器上頭執行的還是 SQL server 2005,若將 SQL server 2008 備分的檔案直接還原到 SQL server 2005,會發生新版中匯出的資料無法匯入至舊版的錯誤。
參考保哥的《如何利用「資料庫發行精靈」將新版 SQL 資料庫降級成舊版》,發現可以利用 SQL server 內建的工具「資料庫發行精靈」,將資料轉換成 SQL 語法(包括產生資料表、將既有資料串接為 INSERT INTO 語句以供還原匯入)。
這天第一個 section 要談的是測試概論與單元測試。雖然 VS 2005 & 2008 也都有測試的功能,但 VS 2010 增加了更多測試類型。
---------------------現場對話實錄的分隔線---------------------
「Visual Studio 2010 Ultimate 軟體開發生命週期管理實作營」就是以前的 VSTS 二日營,這份筆記是第一天 (2011/05/23) 的內容。
在 Visual Studio 2008 之前,Visual Studio 所提供的塑模工具只有 DSL。DSL 可以用來描述 IIS 設定等等內容,若是要繪製其他圖形,通常都會使用 Visio。一直到 Visual Studio 2010 才完整支援 UML。
今天的作業是寫 console 程式,要帶一些參數。可是如果只能在命令提示字元視窗輸入參數,就不方便進入 debug 模式了,我想要的是可以在偵錯模式中輸入參數。所以上網查了一下找到這篇:"debug Console Application"。
1. 「專案(P)」→「屬性(P)」,或在方案總管視窗上對專案按右鍵→「屬性」。
剛才遇到一件很痛苦的事:在編輯泛型處理常式 (*.ashx) 時,無法把程式碼摺疊起來。在 Google 找到《視覺工作室 ASP.Net 展開和摺疊 ashx 泛型處理程序中的問題》:「工具 (T)」→「選項 (O)」,打開選項設定左側的「文字編輯器」→「副檔名」,新增副檔名 "ashx"、選擇對應的編輯器(我選 Visual Studio C#),按下「加入 (D)」,就完成了。
設定的畫面:
透過程式操作 Word 物件,把值塞進去。可是在程式運行的過程裡,Word 視窗一直跳出來。雖然未來這個視窗應該只會出現在 server side,但總覺得怪怪的,所以想想還是把它關掉的好。找了一下,在這篇《是否可以在背景開啟 Word 文件》得到提示:要改變開啟檔案時的參數值。
這個參數塞得很裡面,在第 12 個參數。懶得記的話也可以看程式碼提示 (intellisence) 的參數說明。
有時候會寫一些讓系統發送 E-Mail 的程式,可是總不能每次測試大砲都直接發射吧?這時候在 Web.Config 做個簡單的設定,就可以把測試信留在 Server 的本機資料夾裡,避免測試發信動作時真的把信寄送到使用者信箱。
在 Winodws 作業系統上有許多服務 (Windows Service),在服務意外中斷時(非正常停止服務的情況下),我們會希望系統做一些處理或提醒。
從「開始」→「所有程式」→「系統管理工具」→「服務」,或直接在「開始」→「執行」中輸入「services.msc」,可以列出所有的服務,找出我們想要設定的服務,按下右鍵→「內容」→切到「修復」頁籤,可以看到系統已經提供幾種預設的處理方式了。
錯誤訊息:「無效的回傳或回呼引數。已在組態中使用 <pages enableEventValidation="true"/> 或在網頁中使用 <%@ Page EnableEventValidation="true" %> 啟用事件驗證。基於安全性理由,這項功能驗證回傳或回呼引數是來自原本呈現它們的伺服器控制項。如果資料為有效並且是必需的,請使用 ClientScriptManager.RegisterForEventValidation 方法註冊回傳或回呼資料,以進行驗證。」
GridView 是與資料庫搭配的好物,
拉一拉、點一點,就可以把讀到的值一筆一筆列出來。