我使用Silverlight和WCF Ria Services开发了.an应用程序。
应用程序必须是使用IIS 5的Windows XP计算机上的主机。
由于我在网络上找到的信息,我确实部署了应用程序没有任何问题。
但是现在当我的应用程序尝试执行第一个WCF查询时,我遇到了这个错误:
消息:Silverlight应用程序加载操作中的未处理错误 查询“登录”失败。 [HttpWebRequest_WebException_RemoteServer] 参数:NotFound调试资源字符串不可用。经常 关键和参数提供了足够的信息来诊断 问题。看到 http://go.microsoft.com/fwlink/?linkid=106663&Version=5.1.10411.0&File=System.Windows.dll&Key=HttpWebRequest_WebException_RemoteServer 在 System.ServiceModel.DomainServices.Client.OperationBase.Complete(例外 错误) System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation.End(IAsyncResult的 结果)在 System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation<> C_ DisplayClass1.b _0(对象 国家) System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation.RunInSynchronizationContext(SendOrPostCallback 回调,对象状态)at System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation.HandleAsyncCompleted(IAsyncResult的 asyncResult)at System.ServiceModel.DomainServices.Client.AsyncResultBase.Complete()
在 System.ServiceModel.DomainServices.Client.ApplicationServices.WebAuthenticationService.HandleOperationComplete(OperationBase 操作) System.ServiceModel.DomainServices.Client.LoadOperation&LT;&GT; C_ DisplayClass41.<Create>b__0(LoadOperation
1 arg)at System.ServiceModel.DomainServices.Client.LoadOperation`1.InvokeCompleteAction() 在 System.ServiceModel.DomainServices.Client.OperationBase.Complete(例外 错误) System.ServiceModel.DomainServices.Client.LoadOperation.Complete(例外 错误) System.ServiceModel.DomainServices.Client.DomainContext.CompleteLoad(IAsyncResult的 asyncResult)at System.ServiceModel.DomainServices.Client.DomainContext&LT;。&以及c _DisplayClass1b.b__17(对象 )
如何修复此错误?
在Windows 7机器上的IIS 7上成功托管的应用程序和wcf ria也一样。
更新:使用Fiddler后我发现我的应用程序错误是404,Silverlight无法找到Ria Services。
答案 0 :(得分:0)
NotFound表示在这种情况下服务器上的任何错误。您需要获取详细的WCF日志。 我建议您将以下内容添加到web.config文件中以启用WCF日志记录:
<configuration>
... your regular configuration here ...
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="All" propagateActivity="true">
<listeners>
<add name="traceListener" type="System.Diagnostics.XmlWriterTraceListener"
initializeData="C:\wcflogs\your_wcf_service_log.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
</configuration>
然后您可以使用服务跟踪查看器工具(SvcTraceViewer.exe)打开.svclog文件 看看发生了什么事。
答案 1 :(得分:0)
尝试在服务器上重新安装RIA服务。
我认为命令是 RiaService.msi Server = true
重新安装后,尝试直接在Web浏览器上访问您的服务。您服务的网址为http://YOURDOMAIN.COM/YourAPP/Full-NameSpace-Of-Class.svc
在命名空间中,你必须用破折号( - )来改变点(。)如果它没有返回响应,那么您必须验证WCF已安装并在IIS中注册。