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本地开发解决方案以及配置远程调试的所有内容,在此,谢谢你们的阅读并欢迎点赞,但愿霖雨的博客可以为你们带来帮助。

相关文章
相关标签/搜索