0

我维护一个非常大的 Silverlight 应用程序,它大量使用 WCF RIA 服务。

当用户在 SL 应用程序中,并且运行 RIA 服务的应用程序池因任何原因重新启动时,来自客户端的后续调用都会失败,直到用户关闭应用程序,并再次从主入口点进入。

日志中的错误与其描述的问题无关。如果用户本质上是“干净”的,这些服务就可以正常工作。

也就是说,应该没有理由这样做,服务确实会不时重启。

我得到的错误如下。有人对看什么有任何想法吗?

[ServiceActivationException]: The service '/ade/Services/DomainServices-Web-
 UserService.svc' 
 cannot be activated due to an exception during compilation.  
 The exception message is: Entity 'DomainServices.Web.Role_Permission' 
 has a property 'PermissionReference' with an unsupported type

如上所述,在重新启动前 10 秒,同样的调用可以正常工作。

非常感激任何的帮助。

4

1 回答 1

0

很抱歉,我无法回答您的问题,但我可以确认我们的大型 Silverlight 应用程序也遇到了非常相似的问题,该应用程序也大量使用了 WCF RIA 服务。每隔一段时间,当应用程序池因计划回收而回收时,我会在 IIS 服务器上的事件日志中看到以下类型的异常。

WebHost 未能处理请求。发件人信息:System.ServiceModel.ServiceHostingEnvironment+HostingManager/12036987 异常:System.ServiceModel.ServiceActivationException:服务“/Services/DomainServices-Web-ServiceLayer-ReportsDomainService.svc”由于编译过程中的异常而无法激活。异常消息是:成员“Activity.ActivitySourceType”的无效包含规范。非投影包含只能在应用了 AssociationAttribute 的成员上指定。---> System.InvalidOperationException:成员“Activity.ActivitySourceType”的包含规范无效。非投影包含只能在应用了 AssociationAttribute 的成员上指定。在 System.ServiceModel.DomainServices.Server.DomainServiceDescription。2.GetOrAdd(TKey key, Func2 valueFactory) 在 System.ServiceModel.DomainServices.Server.DomainServiceDescription.GetDescription(Type domainServiceType) 在 System.ServiceModel.DomainServices.Hosting.DomainServiceHost..ctor(Type domainServiceType, Uri[] baseAddresses) 在 System.ServiceModel.DomainServices.Hosting。在 System.ServiceModel.ServiceModel.ServiceHostingEnvironment.HostingManager.CreateService(String normalizedVirtualPath) 在 System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses) 的 DomainServiceHostFactory.CreateServiceHost(Type serviceType, Uri[] baseAddresses)。 System.ServiceModel.ServiceHostingEnvironment.HostingManager 中的 ServiceHostingEnvironment.HostingManager.ActivateService(String normalizedVirtualPath)。EnsureServiceAvailable(String normalizedVirtualPath) --- 内部异常堆栈跟踪结束 ---
在 System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath) 在 System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath) 进程名称:w3wp 进程 ID:15172

这些异常会在应用程序池回收后立即记录,并且我们的用户在我再次手动回收应用程序池之前无法使用该应用程序。

你在这方面取得了进展吗?

谢谢凯文

于 2013-10-24T16:34:24.873 回答