WCF X.b 操作引用了已经从 Y.b 操作导出的消息元素 [http://tempuri.org/:b]可以通过更改方法名称或使用 OperationContractAttribute 的 Name 属性更改其中一个操作的名称...

详细错误如下:
很可能由 IncludeExceptionDetailInFaults=true 创建的 ExceptionDetail,其值为:
system.invalidOperationException: 在调用 WSDL 导出扩展过程中引发异常: System.ServiceModel.Description.DataContractSerializerOperationBehavior
协定: http://tempuri.org/:ICommunicationContract ----> system.invalidOperationException: nt.WcfContract.IServerCallback.Loginout 操作引用了已经从 nt.WcfContract.ICommunicationContract.Loginout 操作导出的消息元素 [http://tempuri.org/:Loginout]。可以通过更改方法名称或使用 OperationContractAttribute 的 Name 属性更改其中一个操作的名称。或者可以使用 MessageContract 编程模型更详细地控制元素名称。
   在 System.ServiceModel.Description.MessageContractExporter.AddElementToSchema(XmlSchemaElement element,String elementNs,XmlSchemaSet schemaSet)
   在 System.ServiceModel.Description.MessageContractExporter.ExportWrappedPart(Message message,String elementName,XmlSchemaSet schemaSet,Boolean skipSchemaExport)
   在 System.ServiceModel.Description.DataContractSerializerMessageContractExporter.ExportBody(Int32 messageIndex,Object state)
   在 System.ServiceModel.Description.MessageContractExporter.ExportMessage(Int32 messageIndex,Object state)
   在 System.ServiceModel.Description.MessageContractExporter.ExportMessageContract()
   在 System.ServiceModel.Description.WsdlExporter.CallExtension(WsdlContractConversionContext contractContext,IWsdlExportExtension extension)
   --- 内部 ExceptionDetail 堆栈跟踪结束 ---
   在 System.ServiceModel.Description.WsdlExporter.CallExtension(WsdlContractConversionContext contractContext,IWsdlExportExtension extension)
   在 System.ServiceModel.Description.WsdlExporter.CallExportContract(WsdlContractConversionContext contractContext)
   在 System.ServiceModel.Description.WsdlExporter.ExportContract(ContractDescription contract)
   在 System.ServiceModel.Description.WsdlExporter.ExportEndpoint(ServiceEndpoint endpoint,XmlQualifiedname wsdlServiceQName)
   在 System.ServiceModel.Description.WsdlExporter.ExportEndpoints(IEnumerable`1 endpoints,XmlQualifiedname wsdlServiceQName)
   在 System.ServiceModel.Description.ServiceMetadataBehavior.MetadataExtensionInitializer.GenerateMetadata()
   在 System.ServiceModel.Description.ServiceMetadataExtension.EnsureInitialized()
   在 System.ServiceModel.Description.ServiceMetadataExtension.HttpGetImpl.InitializationData.Initializefrom(ServiceMetadataExtension extension)
   在 System.ServiceModel.Description.ServiceMetadataExtension.HttpGetImpl.GetinitData()
   在 System.ServiceModel.Description.ServiceMetadataExtension.HttpGetImpl.TryHandleDocumentationRequest(Message httpGetRequest,String[] queries,Message& replyMessage)
   在 System.ServiceModel.Description.ServiceMetadataExtension.HttpGetImpl.ProcessHttpRequest(Message httpGetRequest)
   在 SyncInvokeGet(Object,Object[],Object[] )
   在 System.ServiceModel.dispatcher.SyncmethodInvoker.Invoke(Object instance,Object[] inputs,Object[]& outputs)
   在 System.ServiceModel.dispatcher.dispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)
   在 System.ServiceModel.dispatcher.ImmutabledispatchRuntime.ProcessMessage5(MessageRpc& rpc)
   在 System.ServiceModel.dispatcher.ImmutabledispatchRuntime.ProcessMessage31(MessageRpc& rpc)
   在 System.ServiceModel.dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

 

出现这个错误的原因是  契约中的CallbackContract回调接口中有方法名和契约中的方法名相同。

 

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....