分类: 系统运维
2010-06-17 16:06:25
当启用浏览器功能的表单从带有 Microsoft Visual Studio 2005 Tools for the 2007 Microsoft Office System 的 Microsoft Visual Studio 2005 或 带 Visual Studio Tools for Office 的 Visual Studio 2008 部署到 InfoPath Forms Services 时,要调试该表单的业务逻辑,必须手动将调试程序连接到服务器进程 (w3wp.exe),并采用与调试 或 类似的过程。
启用浏览器功能的表单模板的业务逻辑代码是从一个或多个程序集部署和加载到服务器上的。下面的信息假定您使用的是具有单个 Web 前端的独立安装,并假定您已经以管理员身份打开了一个交互式会话。还可以遵循 (远程调试设置)中的原则并按照下面所描述的过程来进行远程调试。
要在服务器上调试表单模板业务逻辑程序集,必须将编译器配置为以调试符号文件 (.pdb) 的形式生成和存储调试信息和项目状态信息,然后这些文件必须在服务器上可用。如果已使用 Microsoft Visual Studio 2005 Tools for the 2007 Microsoft Office System 开发了表单,则当生成“调试”配置(这是“InfoPath 表单模板”项目的默认配置)时,就会发生这种情况。对于“发行”配置而言,默认情况下不会生成调试信息。要对此进行更改,请在“解决方案资源管理器”中右键单击项目,单击“属性”,单击“生成”,再单击“高级”按钮,然后在“调试信息”下拉列表中选择“完全”。在这两种情况下,Microsoft Visual Studio 2005 Tools for the 2007 Microsoft Office System 都将生成一个表单模板 .xsn 文件并在表单清单文件中生成相应的条目,以便 .pdb 文件可以自动部署并加载到服务器上。(要更改生成配置设置,请使用“生成”菜单上的“配置管理器”命令)。
执行调试操作的用户还必须有权访问与表单模板关联的所有业务逻辑程序集的源代码。源代码未包括在表单模板自身中(而包含在表单模板项目文件夹中),应使其对表单设计者可用。
开始调试之前,必须将调试程序连接到服务器进程 (w3wp.exe) 的所有实例,如以下步骤所述。
打开 Visual Studio 并单击“工具”菜单上的“连接到进程”。
单击“选择”,再单击“调试以下代码类型”,选中“托管”复选框,然后单击“确定”。
选中“显示所有用户的进程”和“显示所有会话中的进程”复选框。
将调试程序连接到“可用进程”列表框中列出的 w3wp.exe 进程的所有实例。
单击“连接”。
表单模板业务逻辑需要执行两次,也就是在部署时和在运行时各执行一次。从调试的角度而言,它们的行为相似。连接调试程序后,您可以对下列任一方案进行调试:
若要调试部署方案,请尝试从服务器的“管理中心”/“应用程序管理”/“管理表单模板”用户界面上载表单模板。
若要调试运行时方案,请从表单部署到的 URL 打开表单,或使用 InfoPath 用户界面打开表单。
所有 Visual Studio 调试支持均可用,并且设置断点、单步执行代码、检查变量和调用堆栈等常见任务应照常工作。调试表单代码时,启用非常有用,它使调试程序在代码执行过程中遇到任何异常情况时都可以断开。