Posts

使用NuGet安裝、移除、更新套件

NuGet主要的功能,是新增、移除、更新套件,接下來就介紹這幾個功能 GUI介面可以很方便地新增和移除套件 在專案參考上面按右鍵 ](http://3.bp.blogspot.com/-XS3ZrSz7Sz8/UHeGBweDbVI/AAAAAAAAAHA/OLOYGXSeVMo/s1600/01.GUI.png) 出現的GUI視窗,左邊可以選擇來源,中間選擇套件,右上角則是搜尋方塊 以JQuery為列,直接按安裝就好了 ](http://4.bp.blogspot.com/-CY2Pd35x9bw/UHeIXhJTIoI/AAAAAAAAAHY/IvSXqNbp9AI/s1600/02.install.png) 安裝成功 ](http://1.bp.blogspot.com/-JfubxHCmqiM/UHeETIUq3RI/AAAAAAAAAG4/ZmOCOd0Isfg/s1600/03.InstallOK.png) 如果要解除安裝,選擇左邊的「已安裝的套件」,然後選擇解除安裝就好了 ](http://2.bp.blogspot.com/-S4d5AIcFThY/UHeGCUqmjeI/AAAAAAAAAHI/Sb-5Z8cqIV0/s1600/04.UnInstall.png) 解除安裝成功 ](http://3.bp.blogspot.com/-bxdHPUljs7w/UHeGEVtQXrI/AAAAAAAAAHM/_yoePcov-cc/s1600/05.UnInstallOK.png) Console介面 功能比較完整,也可以使用Tab命令補全 選擇工具裡面的程式庫套件管理員,再選擇Package Manager Console ](http://4.bp.blogspot.com/-UwUWUKz-yBQ/UHeJVA0_4PI/AAAAAAAAAHg/e3FoTIa3nCg/s1600/06.Console.png) 就會打開Console介面 ](http://1.bp.blogspot.com/-jThsTH3PeJw/UHeJVgYOTkI/AAAAAAAAAHk/-sM2w6Ud-H4/s1600/07.Console2.png) 還是以JQuery為例 Install-Package是安裝套件 Update-Package是更新套件 參數-Version可以指定版本,如不指定則會以最新版為主 Uninstall-Package是移除套件 ](http://1.bp.blogspot.com/-cdtMPEn5V04/UHeJWvumlQI/AAAAAAAAAHw/J1Ow8bM38kA/s1600/08.Command.png) 搜尋套件的命令是Get-Package 參數ListAvailable可以列出可用套件 參數AllVersions用來列出該套件所有版本 參數Filter用來過慮條件 ](http://4.bp.blogspot.com/-BdqrQE8Fvqg/UHeJXsL6RhI/AAAAAAAAAH0/QsOebdVodSk/s1600/09.Filter.png)


安裝NuGet套件管理工具

前言 NuGet是.NET平台上面的套件管理工具 主要用來安裝、更新、移除套件,套件中可能包含要參考的元件 使用的資料夾或檔案、設定檔、元件相依性等等 可以幫助我們省下不少時間和繁雜的工作 http://nuget.codeplex.com 這裡有Source Code和其他的工具 http://docs.nuget.org/ 這裡有相關的文件 先安裝Vistual Studio Extension,選擇工具裡面的擴充功能和更新 ](http://4.bp.blogspot.com/-MUeMfNZgLEg/UHZ6DAcHfuI/AAAAAAAAAEw/UehHNPObctY/s1600/01.Install.png) 選擇線上Visual Studio 組件庫,第一個就是NuGet Package Manager ](http://1.bp.blogspot.com/-T7tnB9XcbNE/UHZ6EOMz2EI/AAAAAAAAAE0/-xcg-R3x_eA/s1600/02.NuGet.png) 點擊下載就可以了 ](http://4.bp.blogspot.com/-NZidbhMyTW8/UHZ6E9eXTfI/AAAAAAAAAE8/m_dEbkwiG_o/s1600/03.download.png) 下載後會先跳出授權條款,選擇要安裝擴充功能的產品後按安裝 ](http://3.bp.blogspot.com/-skigye0-uG8/UHZ6Fr3kPrI/AAAAAAAAAFE/sGnL5qxDLiU/s1600/04.Licenes.png) 安裝中 ](http://1.bp.blogspot.com/-fsigQj-SZXM/UHZ6GjGapHI/AAAAAAAAAFM/rcLavJDcF0M/s1600/05.Install.png) 安裝完成 ](http://1.bp.blogspot.com/-DqosQ9bRxm8/UHZ6HYBlntI/AAAAAAAAAFU/fX9zzRxkHno/s1600/06.OK.png) 安裝完後需要重新啟動Vistual Studio,按下「立即重新啟動」就好了 ](http://2.bp.blogspot.com/-K2YO0NkYsRk/UHZ6IGHGkqI/AAAAAAAAAFg/NR6v74YiUJo/s1600/07.Msg.png) 重新啟動後,在工具中就會多了一個程式庫套件管理員 ](http://4.bp.blogspot.com/-UFABkchM5Pw/UHZ6JNR9PbI/AAAAAAAAAFk/4Ts5mrE1FdM/s1600/07.toolbar.png) 也可以在專案中的參考上按右鍵,選擇管理NuGet套件 ](http://1.bp.blogspot.com/-1KGwG2VZIpw/UHZ6J8J0IsI/AAAAAAAAAFs/iepvy0TOAgw/s1600/08.toolbar2.png) 選擇要安裝的套件,以JQuery為例 ](http://1.bp.blogspot.com/-il5IZubxn0Q/UHeERNvfOsI/AAAAAAAAAGw/zE7t9a1OsKU/s1600/02.install.png) 按下下載後就會開始安裝該套件相關的檔案 ](http://1.bp.blogspot.com/-JfubxHCmqiM/UHeETIUq3RI/AAAAAAAAAG4/ZmOCOd0Isfg/s1600/03.InstallOK.png) 安裝後的樣子 ](http://3.bp.blogspot.com/-NWG262i6zjk/UHaD66BbQKI/AAAAAAAAAGc/NRUS0g96X2o/s1600/11.installOK.png)


VS2010 Remote Debug 遠端偵錯

前言 很多時後特別是設定檔的原因,直接在開發環境的伺服器上面遠端偵錯,比較容易找到問題點,但ASP.NET的遠端偵錯之前一直搞不定,後來爬了許多文並做了多次的試驗後才搞定,主要問題分成兩個部份,防火牆的設定相對來說比較簡單,大部份都是帳號權限的問題比較麻煩,在此記錄一下,以供日後老年癡呆的時後服用 首先先從簡單的防火牆設定開始 http://msdn.microsoft.com/zh-tw/library/ee126350%28v=vs.100%29.aspx 本機防火牆設定 遠端偵錯 DCOM:TCP 135 遠端偵錯 DCOM UDP IPSec UDP:500,4500 允許Vistual Studio接收網路訊息 SystemDrive:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe 在附加執行緒的時後,如果本機的防火牆設定沒開,預設就會跳出這個訊息 選擇解除了就會幫你打開相對應的Port 遠端防火牆設定 遠端偵錯 DCOM TCP 135 IPSec 遠端偵錯 DCOM UDP 500, 4500 遠端偵錯檔案及印表機 TCP 139, 445 遠端偵錯檔案及印表機 UDP 137, 138 為 Visual Studio msvcmon.exe 處理序新增例外 SystemDrive:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE 在伺服器上面使用遠端偵錯工具組態精靈進行設定比較簡單 再來就是問題比較多的帳號權限問題 http://msdn.microsoft.com/zh-tw/library/9y5b4b4f.aspx 重點1:每台電腦上都必須有本機使用者帳戶,而且兩個帳戶的使用者名稱和密碼都必須相同 重點2:如果您要以不同的使用者帳戶執行 剛開始我是在本機和遠端都另外開一個帳號,密碼都一樣,在內部開發環境中順利執行遠端偵錯 但後來換了線上環境,卻又發生帳號權限問題,再多爬一些文後,才發現問題在這裡 也就是說本機附加執行緒的時後,用的是打開Visual Studio的帳號連線到遠端 而遠端接收連線後也要連回來本機,用的是打開msvsmon的帳號 開發環境隨便搞都沒關系,但線上環境就不能亂動了,更何況是加帳號 所以最簡單的方法,就是使用遠端的管理員帳號,然後讓本機來配合遠端的密碼,首先開啟遠端的偵錯工具


App.config Transformations

前言 使用過內建的web.config transform功能,對於佈署不同環境時更新設定檔內容很有幫助 但app.config並沒有這樣的功能,之前搜尋了一些解法,大部份是自行修改專案檔,並利用MSBuild來轉換XML檔案 那一次研究到頭暈眼花還搞不定,就暫時放下,改天境界有所提升再來研究 最近又想到這個問題,趁著失眠的時後再來摸一下,應該可以很快就睡著XD 結果找到了這個套件,用滑鼠點一點就搞定了,使用上方便多了 首先先下載SlowCheetah這個套件 安裝並重新啟動後,在app.config上面點右鍵,會出現這個Add Transform功能選項 ](http://3.bp.blogspot.com/-eD-oI9lRbjQ/UC9h51R2VZI/AAAAAAAAAAo/RL1zOHSjxrU/s1600/02.AddTransform.png) 按下後,會跳出一個警告視窗,提示會修改你的專案檔來完成app.config的轉換功能 ](http://3.bp.blogspot.com/-hZFwvWz7Jn4/UC9h6tFmWtI/AAAAAAAAAAs/ZmaHtC_mDzo/s1600/03.Alert.png) 按下「是」後 ,會自動幫你依組態新增出對應的config檔案 ](http://3.bp.blogspot.com/-dyVGcKN93PQ/UC9lbptDKlI/AAAAAAAAABc/heOoWKUG5Cs/s1600/035+Result.png) 這是一個簡單的設定檔內容 <?xml version="1.0" encoding="utf-8" ?> <configuration> <appSettings> <add key="ServerIP" value="127.0.0.1" /> </appSettings> <connectionStrings> <add name="MyDB" providerName="System.Data.SqlClient" connectionString="Data Source=(local);Initial Catalog=DemoDB;Integrated Security=True"/> </connectionStrings> </configuration> 在Debug組態的設定檔中,改變了設定檔的內容 <?xml version="1.0" encoding="utf-8" ?> <!– For more information on using transformations see the web.config examples at http://go.microsoft.com/fwlink/?LinkId=214134\. –> <configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> <appSettings> <add key="ServerIP" value="192.168.100.11" xdt:Transform="SetAttribute" xdt:Locator="Match(key)" /> </appSettings> <connectionStrings> <add name="MyDB" connectionString="Data Source=192.