SharePoint 2013 本地開發解決方案以及遠程調試

  在SharePoint開發中,咱們須要在部署有SharePoint環境的服務器中開發,這是一件讓人很苦惱的事情,畢竟不能一個項目多人開發配備多臺服務器,這就須要本地開發。windows

  原本本身覺得SharePoint 2013在再也不支持客戶端系統的條件下,只能服務器上開發,QQ羣裏的朋友提醒說也能夠本地開發,遠程調試,覺得本身是知道SharePoint 2010能夠經過註冊表修改,本地安裝SharePoint的,順着這個思路,通過一番谷歌/bing,而後實現了,在此總結一下,分享給你們。服務器

思  路測試

  本地安裝Visual Studio 2013,導入SharePoint註冊表,複製必須的dll,使用遠程調試;spa

缺  陷命令行

  不能本地建立SharePoint解決方案,只能編輯;debug

場  景3d

  可使用源代碼管理,將文件下載到本地進行開發,而後在服務器上獲取,打包/部署,而後本地調試。調試

  一、在本地嘗試使用VS開發SharePoint的朋友,都知道新建/打開SharePoint解決方案,會報以下錯誤:code

  二、在SharePoint 服務器中,打開註冊表,找到以下位置:blog

  我查資料沒有查到2013版本的,可是2010版本說要把服務器上Web Server Extensions下面,14這個節點導出,而後導入到本地便可;

  因爲2013版本,Web Server Extensions下面,有14和15兩個文件夾,本身不知道導入哪一個,索性就把Shared Tools整個節點導出,而後導入到本機(Win8);

wps_clip_image-30078[5]

  三、導入註冊表,新建SharePoint解決方案依然報錯,由於默認須要鏈接調試的站點,而本地沒有,必然報錯(或許修改不讓默認鏈接,也能解決,待解決);

  可是,在服務器上建立一個解決方案,本地編輯已經能夠了,可是會報以下錯誤,很正常,由於本地沒有環境必然沒有這兩個引用,去服務器拷過來,放到bin/debug下:

wps_clip_image-11724[4]

  四、這兩個文件所在位置,服務器物理路徑15\ISAPI下,以下圖:

wps_clip_image-19334[4]

  五、本地從新生成,VS顯示所有從新生成已成功,以下圖:

  這樣,咱們本地編寫SharePoint 2013的解決方案,已經能夠了,下面咱們進行遠程調試的配置:

wps_clip_image-17886[4]

  六、使用遠程調試,有幾個步驟須要配置:

    a.本地/服務器必須有相同的管理員賬號;

    b.將本地VS中的Remote Debugger拷貝到服務器,並執行msvsmon.exe;

    c.設置msvsmon.exe爲windows認證,將調試使用帳號受權容許調試;

    d.暫時關閉兩臺機器防火牆,或者容許調試經過;

  七、服務器和本地,共同建立一個帳號mydebug(用戶名/密碼相同);

  我在完成這步之後,測試了能夠沒必要使用這個帳號調試,可是這個帳號兩邊必須有,並且必須受權管理員;

wps_clip_image-9712[4]

  八、找到本地的Remote Debugger,拷貝到服務器,路徑以下:

  C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Remote Debugger,調試的時候,注意使用裏面64位進行調試;

wps_clip_image-31575[4]

  九、在拷貝到服務器的Remote Debugger中,右鍵msvsmon.exe,以管理員運行,而後會看到Visual Studio遠程調試監視器打開;

wps_clip_image-12670[4]

  十、以下圖,能夠看到在等待新的鏈接:

wps_clip_image-26212[4]

  十一、端口號隨意設置,要使用Windows身份認證,權限要勾上調試帳號;

wps_clip_image-4685[4]

  十二、在本地VS中,附加進程,以下圖:

  能夠看到,咱們附加的已是遠程服務器的進程了,選擇w3wp.exe

wps_clip_image-31923[4]

  1三、能夠看到Visual Studio遠程調試監視器,已經接到咱們的鏈接了;

wps_clip_image-18769[4]

  1四、遠程調試注意要部署最新的程序,不然斷點不會命中;

wps_clip_image-32117[4]

  1五、部署之後,還要單獨部署pdb文件,使用命令行的方式;

Copy SharePointProject.pdb  C:\Windows\Microsoft.NET\assembly\GAC_MSIL\ SharePointProject\v4.0_1.0.0.0__3475aec342981a3a

  在SharePoint 2013中,因爲.Net 4.0和Windows系統兼容問題,4.0以上版本的dll,都不熟到C:\Windows\Microsoft.NET\assembly下了,再也不是咱們熟悉的GAC,這一點要特別注意;

  pdb文件部署路徑C:\Windows\Microsoft.NET\assembly\GAC_MSIL\SharePointProject\ v4.0_1.0.0.0__3475aec342981a3a,「3475aec342981a3a」是這個程序集的強名稱;

wps_clip_image-6848[4]

  1六、全部工做完成,看看遠程調試的效果吧,仍是不錯的。

wps_clip_image-16047[4]

總  結

  SharePoint 2013本地開發,就是把SharePoint註冊表從服務起導出而後從本地導入;遠程調試有幾個要注意的地方,本地/遠程Remote Debugger版本要一致,本地/遠程要有相同的管理員帳號,遠程運行Remote Debugger本地鏈接,Remote Debugger配置Windows認證並受權調試帳號,代碼要是最新pdb文件要部署到GAC下,GAC已經再也不原來的位置。

  以上就是SharePoint2013本地開發解決方案以及配置遠程調試的所有內容,在此,謝謝你們的閱讀並歡迎點贊,但願霖雨的博客可以爲你們帶來幫助。

相關文章
相關標籤/搜索