webService的远程调试问题(downmoon)
一个Web Service,在本地调试时输入参数,可以返回一个dataset,部署到服务器上时却不显示输入参数框,显示如下:
测试窗体只能用于来自本地计算机的请求。
查看msdn帮助,如下:
“<项目名> 属性页”对话框 ->“配置属性”->“调试”
“配置属性”文件夹中的“调试”属性页包含下列属性:
调试模式
指定是否要调试项目、程序或 URL。还可以选择“等待附加到外部进程”。 “项目” 指示当调试应用程序时,应启动可执行文件(对于 Windows 应用程序和控制台应用程序项目)或页(对于 Web 项目)。无法直接启动类库项目。如果要调试 XML Web services,则设置该属性将使应用程序自动附加到 Internet Explorer。
“程序” 指示调试应用程序时应启动特定的程序。例如,可能运行使用类库项目的预建客户端。必须设置“启动应用程序”以便进行调试。
“URL” 指示调试应用程序时应访问特定的 URL(“启动 URL”)。例如,可能访问使用类库项目的 Web 站点的 URL。
“等待附加到外部进程” 该值仅适用于 Web 应用程序和 XML Web services 项目。对于 XML Web services 项目,调试器将附加到要调入 XML Web services 的进程。开始之前在 XML Web services 中设置一个断点,以便使该断点在外部进程调用 XML Web services 时被命中。
每次保存项目或关闭但不保存项目时,就会将此属性自动写入并保存到项目的“每用户”文件 (.user) 中。
更改此属性后,选择“应用”按钮以便对相应的属性(“启动应用程序”、“启动 URL”或“起始页”)进行编辑。
有关如何以编程方式访问该属性的信息,请参见 StartAction 属性。
命令行参数
指定“启动应用程序”属性的参数。每次保存项目或关闭但不保存项目时,就会将此属性自动写入并保存到项目的“每用户”文件 (.user) 中。 有关如何以编程方式访问该属性的信息,请参见 CommandLineArguments 属性。
工作目录
指定被调试的程序的工作目录。每次保存项目或关闭但不保存项目时,就会将此属性自动写入并保存到项目的“每用户”文件 (.user) 中。 有关如何以编程方式访问该属性的信息,请参见 StartWorkingDirectory 属性。
始终使用 Internet Explorer
确定调试是否将使用为 Visual Studio 指定的默认 Internet 浏览器。每次保存项目或关闭但不保存项目时,就会将此属性自动写入并保存到项目的“每用户”文件 (.user) 中。 有关如何以编程方式访问该属性的信息,请参见 StartWithIE 属性。
启用远程调试
启用后,允许远程调试在“远程调试计算机”属性中指定的计算机上的 .exe。每次保存项目或关闭但不保存项目时,就会将此属性自动写入并保存到项目的“每用户”文件 (.user) 中。 若要以编程方式访问此属性,请参见 RemoteDebugEnabled。
远程调试计算机
启用“启用远程调试”属性时,是 .exe 将在其上运行的计算机的名称。.exe 在远程计算机中的位置必须与“输出路径”属性的值匹配,该属性位于“配置属性”文件夹的“生成”属性页中。远程计算机需要安装调试器组件。本地计算机的用 户需要属于远程计算机上的“Debugger Users”(调试器用户)组。.exe 必须位于远程计算机上的可共享目录中。 每次保存项目或关闭但不保存项目时,就会将此属性自动写入并保存到项目的“每用户”文件 (.user) 中。
若要以编程方式访问此属性,请参见 RemoteDebugMachine。
智能设备开发人员说明
“启用 ASP 调试”、“启用 ASP.NET 调试”、“启用非托管调试”、“启用 SQL Server 调试”、“启用远程调试”和“远程调试计算机”
不支持。
原来,远程调试划是用于.exe文件,不是用于web项目,于是,豁然开朗,在web.config文件中添加配置如下:
<protocols>
<add name="HttpSoap"/>
<add name="HttpPost"/>
<add name="HttpGet"/>
<add name="Documentation"/>
</protocols>
</webServices>
OK! ^-^