コード例 #1
0
            private void ExportMessageBodyBinding(MessageDescription messageDescription, bool isRpc, bool isEncoded, MessageBinding messageBinding)
            {
                SoapBodyBinding binding = SoapHelper.GetOrCreateSoapBodyBinding(this.endpointContext, messageBinding, this.exporter);

                if (binding != null)
                {
                    binding.Use = isEncoded ? SoapBindingUse.Encoded : SoapBindingUse.Literal;
                    if (isRpc)
                    {
                        string wrapperNamespace;
                        if (!this.ExportedMessages.WrapperNamespaces.TryGetValue(new MessageContractExporter.MessageDescriptionDictionaryKey(this.endpointContext.ContractConversionContext.Contract, messageDescription), out wrapperNamespace))
                        {
                            wrapperNamespace = messageDescription.Body.WrapperNamespace;
                        }
                        binding.Namespace = wrapperNamespace;
                    }
                    if (isEncoded)
                    {
                        binding.Encoding = XmlSerializerOperationFormatter.GetEncoding(this.soapVersion);
                    }
                }
            }