如何:配置 Visual Studio 以调试 XAML 浏览器应用程序来调用 Web 服务

XAML browser applications (XBAPs) 在一个限于 Internet 区域权限集的部分信任的安全沙盒中运行。 此权限集将 Web 服务调用限于仅位于 XBAP 应用程序源站点的 Web 服务。 但是,当在 Microsoft Visual Studio 2005 中调试 XBAP 时,并不将其视为具有与其引用的 Web 服务相同的源站点。 当 XBAP 尝试调用 Web 服务时,这将导致引发安全异常。 但是,可以配置 Microsoft Visual Studio 2005 XAML Browser Application (WPF) 项目以在调试时模拟与其调用的 Web 服务具有相同的站点。 这允许 XBAP 安全地调用 Web 服务,而不导致安全异常。

配置 Visual Studio

若要配置 Microsoft Visual Studio 2005 以对调用 Web 服务的 XBAP 进行调试,请执行以下操作:

  1. 在**“解决方案资源管理器”中选定一个项目,然后在“项目”菜单中单击“属性”**。

  2. 在**“项目设计器”中,单击“调试”**选项卡。

  3. 在**“启动操作”部分中选择“启动外部程序”**,然后输入以下内容:

    C:\WINDOWS\System32\PresentationHost.exe

  4. 在**“启动选项”部分的“命令行参数”**文本框中输入以下内容:

    -debug filename

    -debug 参数的 filename 值是 .xbap 文件名,例如:

    -debug c:\example.xbap

注意注意

这是使用 Visual Studio 2005 XAML Browser Application (WPF) 项目模板创建的解决方案的默认配置。

  1. 在**“解决方案资源管理器”中选定一个项目,然后在“项目”菜单中单击“属性”**。

  2. 在**“项目设计器”中,单击“调试”**选项卡。

  3. 在**“启动选项”部分,请将以下命令行参数添加到“命令行参数”**文本框:

    -debugSecurityZoneURL URL

    -debugSecurityZoneURL 参数的 URL 值是需要模拟为应用程序源站点位置的 URL。

例如,请考虑使用具有以下 URL 的 Web 服务的 XAML browser application (XBAP):

http://services.msdn.microsoft.com/ContentServices/ContentService.asmx

此 Web 服务的源站点 URL 为:

http://services.msdn.microsoft.com

因此,完整的 -debugSecurityZoneURL 命令行参数和值为:

-debugSecurityZoneURL http://services.msdn.microsoft.com

请参见

概念

WPF 主机 (PresentationHost.exe)