設定 Web Deploy Package 部署後, 不要刪除特定資料夾

情境: 使用 TFS 做 CI/CD , 發現 Web Deploy Package 會刪除目的地中的資料夾, 造成使用者上傳的檔案都不見了. 解決方式: 用筆記本開 YourApplication.csproj 加入以下宣告,讓部署的時候,排除掉Uploads資料夾,也同時不要刪除該資料夾 <ItemGroup>       <ExcludeFromPackageFolders Include=”Uploads”>     </ExcludeFromPackageFolders>   </ItemGroup>    <ItemGroup>        <MsDeploySkipRules Include=”SkipAppData”>         <SkipAction>Delete</SkipAction>         <ObjectName>dirPath</ObjectName>         <AbsolutePath>Uploads</AbsolutePath>         <XPath></XPath>       </MsDeploySkipRules>   </ItemGroup>   Enjoy. Jacky


程式取得 AD 驗證完後, 帳號詳細狀態

很多朋友會開發與 AD 驗證帳號的程式, 並希望取得帳號的狀態值, 提供一個簡單的方式可以方式知道這些狀態. catch (System.DirectoryServices.DirectoryServicesCOMException directoryServiceCOMException) { Console.WriteLine(“—————————————————————“); Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.Message));     Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.ErrorCode));     Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.ExtendedError));     Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.ExtendedErrorMessage)); } directoryServiceCOMException.ExtendedErrorMessage 中會回傳帳號的詳細狀態: [LDAP: error code 49 – 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 775, vece ] 代號相關的狀態說明: 525 user not…


Coded UI 擷取執行時的畫面

在 Coded UI 執行的過程中會有許多的 UI 操作, 有時候會需要在特定的畫面擷取存檔做一個記錄. 實作方式如下: Image MyImage = UITestControl.Desktop.CaptureImage(); MyImage.Save(@”C:\Users\jchiou\Desktop\logs\YourNaming001.jpg”, System.Drawing.Imaging.ImageFormat.Jpeg); 如果再進階的運作, 可以將做圖片的比對功能, 可以參考同事的作法: How To: Do image comparison in Coded UI Test https://blogs.msdn.microsoft.com/gautamg/2010/04/08/how-to-do-image-comparison-in-coded-ui-test/   Enjoy. Jacky


如何在開發初期即找到程式中有呼叫 WCF 或是 SqlConnection 沒有關閉

這幾年來常常因為客戶的交易系統發生問題而被緊急呼叫到現場處理, 也常是在深夜時候被抓去. 分析到最後, 常是因為資源沒有正常的釋放, 如 Web Server 去呼叫 AP Server 的 WCF 程式沒有關閉連線 或是 資料庫操作沒有關閉連線 我常在想一定要這麼辛苦嗎? 為什麼不在開發的時候就即早發現問題, 不要讓這些不定時炸彈到正式環境後才爆炸. 有一個很簡單且方便的方法: Visual Studio 內建的 靜態程式碼分析 (Static Code Analysis) 步驟如下: 1. 我新增一個 WCF 專案及 Console Appliction, 並在 Console Application 參考 WCF 服務 2. 在 Console Application 專案屬性頁中, 程式碼分析 => 選擇 Microsoft 所有規則 (也可以自行調整規則集內容) 3. 在專案上右鍵 => 分析 =>…


Visual Studio 某些操作會出現 ArgumentException

  問題描述: Visual Studio professional 2013 Update4,在進行程式碼分析的時候發生以下的錯誤 建議將 控制台內的螢幕顯示縮放設定改回100%


如何比對擱置內容, 而不解除它

情境: 之前客戶問我: 如果別人擱置修改後的程式碼讓我檢視, 可不可以直接顯示結果, 而不用解除櫚置, 看完再 Undo Changes. 今天無意間發現有一個方式可以做到, 步驟如下: 1. Visual Studio –> 工具 –> 選項 –> 設定使用者工具 2. 加入 3. 輸入 WINDIFF 工具的位置 4. 設定完成 6. 找到櫚置 7. 詳細資料 8. 選擇要比較的版本. 9. WINDIFF 顯示比較結果. Enjoy.


Windows Azure Web sites 04 – Visual Studio –> Git –> GitHub –> Windows Azure Web Site

步驟如下: 1. 在Windows Azure 入口網站建立一個新的網站 2. 在 GitHub 中建立一個 3. 將 網站 與原始程式控制 連結 5. 選擇 GitHub 6. 選擇欲連結的 儲存 7. 開啟 Visual Studio –> 選項 8. 在原始檔控制 的 外掛程式 選擇 Microsoft Git 提供者 . 9. 在 GitHub.com 中複製 儲存的 URL 10. 在 Team Explorer –>  Git 儲存機制 –> 複製 –> 輸入上一步驟的 URL 及 指定存放的資料夾位置…

1

如何讓 ASP.NET 1.1 應用程式, 在 Windows 2008 R2 64bit 上執行

随著 Windows Server 2003 的支援期限到期, 最近有很多企業將目前很多的 Windows Server 2003 升級到 Windows 2008 R2. 之前有許多 Web Application 是使用 .NET 1.1 開發的, 短時間無法升級及修改程式, 故先以設定作業系統可以支援 .NET 1.1 Web Application 先用. ( 還是要升級到 .NET 2.0 以上的版本較好) 將最近協助客戶步驟整理如下: 1. 在安裝 IIS 時, 請確認 IIS6 Metabase Compatibility 有勾選. 2. .NET Framework 1.1 安裝 請依下列順序安裝: .NET Framework Version 1.1 Redistributable Package .NET…


使用 Team Foundation Version Control API 範例

這幾天在協助客戶轉移 VS 2005 到 TFS 2012 及 與現有系統整合, 大量運用 API 來操作 TFS 的 版本控管, 下列是簡易的範例供參考: Create Console Application Project Add Reference Microsoft.TeamFoundation.Client.dll Microsoft.TeamFoundation.Common.dll Microsoft.TeamFoundation.VersionControl.Client.dll Microsoft.TeamFoundation.VersionControl.Common.dll   using Microsoft.TeamFoundation.Client; using Microsoft.TeamFoundation.VersionControl.Client;               NetworkCredential myCred = new NetworkCredential("UserName", "Password", "YourDomainName");             // Connect to the team project collection and the server that hosts the version-control repository….


VC6 升級到 Visual Studio 2010 C++

今天客戶問了一個 VC 6 升級到 Visual Studio 的問題, 找到同事寫的一篇文章說明很詳細, 供大家參考: Visual Studio 2010 C++ Project Upgrade Guide http://blogs.msdn.com/b/vcblog/archive/2010/03/02/visual-studio-2010-c-project-upgrade-guide.aspx Enjoy.