SharePoint 2013 本地开发解决方案以及程调试
SharePoint 2013 本地開發(fā)解決方案以及程調(diào)試
在SharePoint開發(fā)中,我們需要在部署有SharePoint環(huán)境的服務(wù)器中開發(fā),這是一件讓人很苦惱的事情,畢竟不能一個項目多人開發(fā)配備多臺服務(wù)器,這就需要本地開發(fā)。
本來自己以為SharePoint 2013在不再支持客戶端系統(tǒng)的條件下,只能服務(wù)器上開發(fā),QQ群里的朋友提醒說也可以本地開發(fā),遠(yuǎn)程調(diào)試,以為自己是知道SharePoint 2010可以通過注冊表修改,本地安裝SharePoint的,順著這個思路,經(jīng)過一番谷歌/bing,然后實現(xiàn)了,在此總結(jié)一下,分享給大家。
思? 路
本地安裝Visual Studio 2013,導(dǎo)入SharePoint注冊表,復(fù)制必須的dll,使用遠(yuǎn)程調(diào)試;
缺? 陷
不能本地創(chuàng)建SharePoint解決方案,只能編輯;
場? 景
可以使用源代碼管理,將文件下載到本地進(jìn)行開發(fā),然后在服務(wù)器上獲取,打包/部署,然后本地調(diào)試。
1、在本地嘗試使用VS開發(fā)SharePoint的朋友,都知道新建/打開SharePoint解決方案,會報如下錯誤:
2、在SharePoint 服務(wù)器中,打開注冊表,找到如下位置:
我查資料沒有查到2013版本的,但是2010版本說要把服務(wù)器上Web Server Extensions下面,14這個節(jié)點導(dǎo)出,然后導(dǎo)入到本地即可;
由于2013版本,Web Server Extensions下面,有14和15兩個文件夾,自己不知道導(dǎo)入哪個,索性就把Shared Tools整個節(jié)點導(dǎo)出,然后導(dǎo)入到本機(jī)(Win8);
3、導(dǎo)入注冊表,新建SharePoint解決方案依然報錯,因為默認(rèn)需要連接調(diào)試的站點,而本地沒有,必然報錯(或許修改不讓默認(rèn)連接,也能解決,待解決);
但是,在服務(wù)器上創(chuàng)建一個解決方案,本地編輯已經(jīng)可以了,但是會報如下錯誤,很正常,因為本地沒有環(huán)境必然沒有這兩個引用,去服務(wù)器拷過來,放到bin/debug下:
4、這兩個文件所在位置,服務(wù)器物理路徑15\ISAPI下,如下圖:
5、本地重新生成,VS顯示全部重新生成已成功,如下圖:
這樣,我們本地編寫SharePoint 2013的解決方案,已經(jīng)可以了,下面我們進(jìn)行遠(yuǎn)程調(diào)試的配置:
6、使用遠(yuǎn)程調(diào)試,有幾個步驟需要配置:
a.本地/服務(wù)器必須有相同的管理員帳號;
b.將本地VS中的Remote Debugger拷貝到服務(wù)器,并執(zhí)行msvsmon.exe;
c.設(shè)置msvsmon.exe為windows認(rèn)證,將調(diào)試使用賬號授權(quán)允許調(diào)試;
d.暫時關(guān)閉兩臺機(jī)器防火墻,或者允許調(diào)試通過;
7、服務(wù)器和本地,共同創(chuàng)建一個賬號mydebug(用戶名/密碼相同);
我在完成這步以后,測試了可以不必使用這個賬號調(diào)試,但是這個賬號兩邊必須有,而且必須授權(quán)管理員;
8、找到本地的Remote Debugger,拷貝到服務(wù)器,路徑如下:
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Remote Debugger,調(diào)試的時候,注意使用里面64位進(jìn)行調(diào)試;
9、在拷貝到服務(wù)器的Remote Debugger中,右鍵msvsmon.exe,以管理員運行,然后會看到Visual Studio遠(yuǎn)程調(diào)試監(jiān)視器打開;
10、如下圖,可以看到在等待新的連接:
11、端口號隨意設(shè)置,要使用Windows身份認(rèn)證,權(quán)限要勾上調(diào)試賬號;
12、在本地VS中,附加進(jìn)程,如下圖:
可以看到,我們附加的已經(jīng)是遠(yuǎn)程服務(wù)器的進(jìn)程了,選擇w3wp.exe
13、可以看到Visual Studio遠(yuǎn)程調(diào)試監(jiān)視器,已經(jīng)接到我們的連接了;
14、遠(yuǎn)程調(diào)試注意要部署最新的程序,否則斷點不會命中;
15、部署以后,還要單獨部署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系統(tǒng)兼容問題,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”是這個程序集的強名稱;
16、所有工作完成,看看遠(yuǎn)程調(diào)試的效果吧,還是不錯的。
總? 結(jié)
SharePoint 2013本地開發(fā),就是把SharePoint注冊表從服務(wù)起導(dǎo)出然后從本地導(dǎo)入;遠(yuǎn)程調(diào)試有幾個要注意的地方,本地/遠(yuǎn)程Remote Debugger版本要一致,本地/遠(yuǎn)程要有相同的管理員賬號,遠(yuǎn)程運行Remote Debugger本地連接,Remote Debugger配置Windows認(rèn)證并授權(quán)調(diào)試賬號,代碼要是最新pdb文件要部署到GAC下,GAC已經(jīng)不再原來的位置。
以上就是SharePoint2013本地開發(fā)解決方案以及配置遠(yuǎn)程調(diào)試的全部內(nèi)容,在此,謝謝大家的閱讀并歡迎點贊,希望霖雨的博客能夠為大家?guī)韼椭?/p>
轉(zhuǎn)載于:https://www.cnblogs.com/914556495wxkj/p/3523453.html
總結(jié)
以上是生活随笔為你收集整理的SharePoint 2013 本地开发解决方案以及程调试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php自动生成mysql的触发代码。
- 下一篇: Delphi全局热键的注册