沙盒解决方案与场解决方案之间的差异

在编译 SharePoint 解决方案时,该解决方案将部署到 SharePoint 服务器上,并附加调试器进行调试。 用于调试解决方案的过程取决于沙盒解决方案属性的设置:沙盒解决方案或场解决方案。

有关详细信息,请参阅沙盒解决方案注意事项

场解决方案

场解决方案在 IIS 工作进程 (W3WP.exe) 中托管,可运行可能影响整个场的代码。 调试其沙盒解决方案属性设置为“场解决方案”的 SharePoint 项目时,系统的 IIS 应用程序池会在 SharePoint 收回或部署该功能之前回收,以便释放由 IIS 工作进程锁定的任何文件。 仅回收为 SharePoint 项目的网站 URL 提供服务的 IIS 应用程序池。

沙盒解决方案

沙盒解决方案在 SharePoint 用户代码解决方案工作进程 (SPUCWorkerProcess.exe) 中托管,运行只会影响解决方案网站集的代码。 由于沙盒解决方案不在 IIS 工作进程中运行,因此 IIS 应用程序池和 IIS 服务器都不能重启。 Visual Basic 将调试程序附加到 SPUCWorkerProcess 进程,该进程由 SharePoint 中的 SPUserCodeV4 服务自动触发和控制。 SPUCWorkerProcess 进程回收以加载最新版本的解决方案并不是必需的。

任一类型的解决方案

对于任一解决方案类型,Visual Basic 还会将调试程序附加到浏览器来启用客户端脚本调试。 为此,Visual Basic 使用脚本调试引擎。 若要启用脚本调试,必须在出现提示时更改默认浏览器设置。

Visual Basic 仅将调试程序附加到运行当前站点的 W3WP 或 SPUCWorkerProcess 进程。 Visual Basic 还附加托管的 COM Plus 和工作流调试引擎。