0

我使用 Prism 开发了一个 Silverlight 业务应用程序,该应用程序需要用户登录才能访问主应用程序。Silverlight 应用程序托管在 IIS 7.5(端口 *:8086)上,并调用托管在同一 IIS 7.5 实例(端口 *:8069)上的 WCF 服务

当我按预期通过所有工作访问 Silverlight 应用程序时http://localhost:8086(即在成功验证后,加载 prism 模块并适当切换视图)但是当我通过机器名称 ( http://xps1521-pc:8086) 或 IP 地址 ( http://192.168.10.104:8086) 访问它时,它无法按预期工作(即在成功认证后,prism 模块被加载视图没有被切换)。我似乎无法弄清楚为什么会发生这种情况,并希望得到一些帮助/指导。

谢谢!

4

2 回答 2

1

在仔细检查您提交的异常后,我认为这就是问题所在。

很可能您在 ViewModel 订阅处理程序中使用了某种反射代码(或打开 UI 对话框),该处理程序只能在 Silverlight 在完全信任模式下运行时执行。

因此,当 silverilght 应用程序的 URL 从 localhost (your dev server) 之外的其他内容更改时,它不再以完全信任模式运行,这就是您得到该异常的原因。

您必须检查您是否正在使用属性 [SecurityCritical] 执行任何方法调用。如果是这样并且如果您确实需要执行该方法,那么您必须在完全信任模式下运行 Silverlight 客户端(不推荐,因为这应该只适用于 Intranet 方案)。

看到这个了解更多信息

希望能帮助到你

于 2013-08-26T19:07:21.003 回答
0

我已经将我的困境追溯到这里MethodAccessException描述的

于 2013-08-26T14:12:26.640 回答