WCF服务中的System.ServiceModel.ServiceActivationException

时间:2010-07-09 19:31:01

标签: web-services model-view-controller visual-studio-2010

我们最近从VS 2008迁移到VS 2010.我的应用程序现在正在运行.net 4.0框架和MVC 2.0。在我的本地机器上进行一点转换后,MVC项目和被引用的服务项目都在我的本地机器上无缝运行。

我接下来将新的MVC应用程序复制到我的开发计算机上的虚拟目录中,并将其重新分配给.net 4.0。

之后,我将新服务应用程序复制到它的虚拟机上,并将其重新分配给.net 4.0。

每当我从开发服务器上的新MVC应用程序中调用我的服务时,就会出现问题。我收到以下错误/堆栈跟踪:

  

System.ServiceModel.ServiceActivationException,   System.ServiceModel,Version = 4.0.0.0,   文化=中性,   公钥= b77a5c561934e089
  消息:请求的服务,   'http://localhost:9090/myservice.svc'   无法激活。
  请参阅服务器的诊断跟踪日志   更多信息。
      资料来源:mscorlib
      数据:System.Collections.ListDictionaryInternal
      TargetSite:Void HandleReturnMessage(System.Runtime.Remoting.Messaging.IMessage,   System.Runtime.Remoting.Messaging.IMessage)
      服务器堆栈跟踪:
         在System.ServiceModel.Security.IssuanceTokenProviderBase 1.DoNegotiation(TimeSpan timeout)
at System.ServiceModel.Security.SspiNegotiationTokenProvider.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
at System.ServiceModel.Security.SymmetricSecurityProtocol.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
at System.ServiceModel.Channels.SecurityChannelFactory
1.ClientSecurityChannel 1.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
at System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.DoOperation(SecuritySessionOperation operation, EndpointAddress target, Uri via, SecurityToken currentToken, TimeSpan timeout)
at System.ServiceModel.Security.SecuritySessionSecurityTokenProvider.GetTokenCore(TimeSpan timeout)
at System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan timeout)
at System.ServiceModel.Security.SecuritySessionClientSettings
1.ClientSecuritySessionChannel.OnOpen(TimeSpan)   超时)
         在System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan   超时)
         在System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan   超时)
         在System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan   超时)
         在System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan)   超时,CallOnceManager级联)
         在System.ServiceModel.Channels.ServiceChannel.EnsureOpened(TimeSpan   超时)
         在System.ServiceModel.Channels.ServiceChannel.Call(String   动作,布尔单向,   ProxyOperationRuntime操作,   Object [] ins,Object [] outs,TimeSpan   超时)
         在System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage)   methodCall,ProxyOperationRuntime   操作)
         在System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage   消息)

Exception rethrown at [0]:   
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage
     

reqMsg,IMessage retMsg)
         在System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&   msgData,Int32类型)
         在RugsDirect.Mvc.CreditCardAuthorization.ICreditCardAuthorization.AuthorizeCreditCard(CreditCardAuthRequest)   请求)
         在RugsDirect.Mvc.CreditCardAuthorization.CreditCardAuthorizationClient.AuthorizeCreditCard(CreditCardAuthRequest)   请求)
         在RugsDirect.Mvc.Controllers.CartController.SendAuthorizationRequest(PurchaseInformationModel)   模特)

我可以进入IIS并浏览此服务没有问题,我的配置文件中的所有内容似乎都是有序的,映射端指向彼此。

如果有人能指出我正确的方向来解决这个问题,我们将不胜感激。

提前致谢, 比利

1 个答案:

答案 0 :(得分:0)

据悉,该服务正在调用dll实际上存在问题。