当前位置: 首页>>代码示例>>C#>>正文


C# BindingParameterCollection.Find方法代码示例

本文整理汇总了C#中System.ServiceModel.Channels.BindingParameterCollection.Find方法的典型用法代码示例。如果您正苦于以下问题:C# BindingParameterCollection.Find方法的具体用法?C# BindingParameterCollection.Find怎么用?C# BindingParameterCollection.Find使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.ServiceModel.Channels.BindingParameterCollection的用法示例。


在下文中一共展示了BindingParameterCollection.Find方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: AddBindingParameters

 /**
  * The execution of this behavior comes rather late.
  * Anyone that inspects the service description in the meantime,
  * such as for metadata generation, won't see the protection level that we want to use.
  *
  * One way of doing it is at when create HostFactory
  *
  * ServiceEndpoint endpoint = host.Description.Endpoints.Find(typeof(IService));
  * OperationDescription operation = endpoint.Contract.Operations.Find("Action");
  * MessageDescription message = operation.Messages.Find("http://tempuri.org/IService/ActionResponse");
  * MessageHeaderDescription header = message.Headers[new XmlQualifiedName("aheader", "http://tempuri.org/")];
  * header.ProtectionLevel = ProtectionLevel.Sign;
  *
  * **/
 public void AddBindingParameters(ContractDescription contractDescription, ServiceEndpoint endpoint, BindingParameterCollection bindingParameters)
 {
     ChannelProtectionRequirements requirements = bindingParameters.Find<ChannelProtectionRequirements>();
     XmlQualifiedName qName = new XmlQualifiedName(header, ns);
     MessagePartSpecification part = new MessagePartSpecification(qName);
     requirements.OutgoingSignatureParts.AddParts(part, action);
 }
开发者ID:cleancodenz,项目名称:ServiceBus,代码行数:21,代码来源:SignMessageHeaderBehavior.cs

示例2: AddBindingParameters

        public void AddBindingParameters(OperationDescription description, BindingParameterCollection parameters)
        {
            //see if ChunkingBindingParameter already exists
            ChunkingBindingParameter param =
                parameters.Find<ChunkingBindingParameter>();
            if (param == null)
            {
                param = new ChunkingBindingParameter();
                parameters.Add(param);
            }

            if ((appliesTo & ChunkingAppliesTo.InMessage)
                          == ChunkingAppliesTo.InMessage)
            {
                //add input message's action to ChunkingBindingParameter
                param.AddAction(description.Messages[0].Action);
            }
            if (!description.IsOneWay &&
                ((appliesTo & ChunkingAppliesTo.OutMessage)
                            == ChunkingAppliesTo.OutMessage))
            {
                //add output message's action to ChunkingBindingParameter
                param.AddAction(description.Messages[1].Action);
            }
        }
开发者ID:tian1ll1,项目名称:WPF_Examples,代码行数:25,代码来源:ChunkingBehavior.cs

示例3: ArgumentNullException

        /// <summary>
        /// Adds the binding parameters.
        /// </summary>
        /// <param name="serviceEndpoint">The service endpoint.</param>
        /// <param name="parameters">The parameters.</param>
        void IEndpointBehavior.AddBindingParameters(ServiceEndpoint serviceEndpoint, BindingParameterCollection parameters)
        {
            if (parameters == null)
            {
                throw new ArgumentNullException("parameters");
            }

            ServiceDebugBehavior debugBehavior = parameters.Find<ServiceDebugBehavior>();
            if (debugBehavior == null && this.serviceDebugBehavior != null)
            {
                parameters.Add(this.serviceDebugBehavior);
            }

            DispatcherSynchronizationBehavior synchronizationBehavior = parameters.Find<DispatcherSynchronizationBehavior>();
            if (synchronizationBehavior == null && this.dispatcherSynchronizationBehavior != null)
            {
                parameters.Add(this.dispatcherSynchronizationBehavior);
            }
        }
开发者ID:nuxleus,项目名称:WCFWeb,代码行数:24,代码来源:TestHttpBindingParameterBehavior.cs

示例4: EnsureDictionary

 private static Dictionary<DirectionalAction, TransactionFlowOption> EnsureDictionary(BindingParameterCollection parameters)
 {
     Dictionary<DirectionalAction, TransactionFlowOption> dictionary = parameters.Find<Dictionary<DirectionalAction, TransactionFlowOption>>();
     if (dictionary == null)
     {
         dictionary = new Dictionary<DirectionalAction, TransactionFlowOption> {
             dictionary
         };
     }
     return dictionary;
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:11,代码来源:TransactionFlowAttribute.cs

示例5: TryExtract

 public static bool TryExtract(BindingParameterCollection collection, out AuthenticationSchemes authenticationSchemes)
 {
     Fx.Assert(collection != null, "collection != null");
     authenticationSchemes = AuthenticationSchemes.None;
     AuthenticationSchemesBindingParameter instance = collection.Find<AuthenticationSchemesBindingParameter>();
     if (instance != null)
     {
         authenticationSchemes = instance.AuthenticationSchemes;
         return true;
     }
     return false;
 }
开发者ID:iskiselev,项目名称:JSIL.NetFramework,代码行数:12,代码来源:AuthenticationSchemesBindingParameter.cs

示例6: IsMetadataListener

 internal virtual bool IsMetadataListener(BindingParameterCollection bindingParameters)
 {
     return bindingParameters.Find<ServiceMetadataExtension.MetadataBindingParameter>() != null;
 }
开发者ID:nlh774,项目名称:DotNetReferenceSource,代码行数:4,代码来源:AspNetEnvironment.cs

示例7: InvalidOperationException

 void IEndpointBehavior.AddBindingParameters(ServiceEndpoint serviceEndpoint, BindingParameterCollection bindingParameters)
 {
     if (bindingParameters == null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("bindingParameters");
     }
     // throw if bindingParameters already has a SecurityCredentialsManager
     SecurityCredentialsManager otherCredentialsManager = bindingParameters.Find<SecurityCredentialsManager>();
     if (otherCredentialsManager != null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.Format(SR.MultipleSecurityCredentialsManagersInChannelBindingParameters, otherCredentialsManager)));
     }
     bindingParameters.Add(this);
 }
开发者ID:dmetzgar,项目名称:wcf,代码行数:14,代码来源:ClientCredentials.cs

示例8: AddBindingParameters

 public void AddBindingParameters(ContractDescription contractDescription, ServiceEndpoint endpoint, BindingParameterCollection bindingParameters)
 {
     var requirements = bindingParameters.Find<ChannelProtectionRequirements>();
     requirements.IncomingSignatureParts.ChannelParts.HeaderTypes.Add(new XmlQualifiedName(_name, _ns));
     requirements.IncomingEncryptionParts.ChannelParts.HeaderTypes.Add(new XmlQualifiedName(_name, _ns));
 }
开发者ID:guozanhua,项目名称:phmi,代码行数:6,代码来源:HeaderEncriptionContractBehavior.cs

示例9:

        void IServiceBehavior.AddBindingParameters(ServiceDescription description, ServiceHostBase serviceHostBase, Collection<ServiceEndpoint> endpoints, BindingParameterCollection parameters)
        {
            if (parameters == null)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("parameters");
            }

            ServiceDebugBehavior param = parameters.Find<ServiceDebugBehavior>();
            if (param == null)
            {
                parameters.Add(this);
            }
        }
开发者ID:nlh774,项目名称:DotNetReferenceSource,代码行数:13,代码来源:ServiceDebugBehavior.cs

示例10: IsMetadataListener

 internal override bool IsMetadataListener(BindingParameterCollection bindingParameters)
 {
     return base.IsMetadataListener(bindingParameters) || bindingParameters.Find<HostedMetadataBindingParameter>() != null;
 }
开发者ID:ItsVeryWindy,项目名称:mono,代码行数:4,代码来源:HostedAspNetEnvironment.cs

示例11: AddMetadataBindingParameters

        internal override void AddMetadataBindingParameters(Uri listenUri, KeyedByTypeCollection<IServiceBehavior> serviceBehaviors, BindingParameterCollection bindingParameters)
        {
            if (serviceBehaviors.Find<HostedBindingBehavior>() != null)
            {
                bindingParameters.Add(new HostedMetadataBindingParameter());
            }

            VirtualPathExtension virtualPathExtension = bindingParameters.Find<VirtualPathExtension>();

            if (virtualPathExtension != null)
            {
                AuthenticationSchemes hostSupportedAuthenticationSchemes = AspNetEnvironment.Current.GetAuthenticationSchemes(listenUri);

                if (hostSupportedAuthenticationSchemes != AuthenticationSchemes.None)
                {
                    if (bindingParameters.Find<AuthenticationSchemesBindingParameter>() == null)
                    {
                        bindingParameters.Add(new AuthenticationSchemesBindingParameter(hostSupportedAuthenticationSchemes));
                    }
                }
            }

            base.AddMetadataBindingParameters(listenUri, serviceBehaviors, bindingParameters);
        }
开发者ID:ItsVeryWindy,项目名称:mono,代码行数:24,代码来源:HostedAspNetEnvironment.cs

示例12: AddBindingParameters

 public void AddBindingParameters(ServiceEndpoint endpoint, BindingParameterCollection parameters)
 {
     ISecurityCapabilities bindingElement = null;
     BindingElementCollection elements = endpoint.Binding.CreateBindingElements();
     for (int i = 0; i < elements.Count; i++)
     {
         if (!(elements[i] is ITransportTokenAssertionProvider))
         {
             ISecurityCapabilities individualProperty = elements[i].GetIndividualProperty<ISecurityCapabilities>();
             if (individualProperty != null)
             {
                 bindingElement = individualProperty;
                 break;
             }
         }
     }
     if (bindingElement != null)
     {
         ChannelProtectionRequirements item = parameters.Find<ChannelProtectionRequirements>();
         if (item == null)
         {
             item = new ChannelProtectionRequirements();
             parameters.Add(item);
         }
         MessageEncodingBindingElement element = elements.Find<MessageEncodingBindingElement>();
         if ((element != null) && (element.MessageVersion.Addressing == AddressingVersion.None))
         {
             item.Add(ChannelProtectionRequirements.CreateFromContractAndUnionResponseProtectionRequirements(endpoint.Contract, bindingElement, this.isForClient));
         }
         else
         {
             item.Add(ChannelProtectionRequirements.CreateFromContract(endpoint.Contract, bindingElement, this.isForClient));
         }
     }
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:35,代码来源:DispatcherBuilder.cs

示例13: InvalidOperationException

 void IEndpointBehavior.AddBindingParameters(ServiceEndpoint serviceEndpoint, BindingParameterCollection bindingParameters)
 {
     if (bindingParameters == null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("bindingParameters");
     }
     SecurityCredentialsManager manager = bindingParameters.Find<SecurityCredentialsManager>();
     if (manager != null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(System.ServiceModel.SR.GetString("MultipleSecurityCredentialsManagersInChannelBindingParameters", new object[] { manager })));
     }
     bindingParameters.Add(this);
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:13,代码来源:ClientCredentials.cs

示例14: InvalidOperationException

 void IServiceBehavior.AddBindingParameters(System.ServiceModel.Description.ServiceDescription description, ServiceHostBase serviceHostBase, Collection<ServiceEndpoint> endpoints, BindingParameterCollection parameters)
 {
     if (parameters == null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("parameters");
     }
     SecurityCredentialsManager manager = parameters.Find<SecurityCredentialsManager>();
     if (manager != null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(System.ServiceModel.SR.GetString("MultipleSecurityCredentialsManagersInServiceBindingParameters", new object[] { manager })));
     }
     parameters.Add(this);
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:13,代码来源:ServiceCredentials.cs

示例15: InvalidOperationException

 void IServiceBehavior.AddBindingParameters(ServiceDescription description, ServiceHostBase serviceHostBase, Collection<ServiceEndpoint> endpoints, BindingParameterCollection parameters)
 {
     if (parameters == null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("parameters");
     }
     // throw if bindingParameters already has a SecurityCredentialsManager
     SecurityCredentialsManager otherCredentialsManager = parameters.Find<SecurityCredentialsManager>();
     if (otherCredentialsManager != null)
     {
         throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(SR.GetString(SR.MultipleSecurityCredentialsManagersInServiceBindingParameters, otherCredentialsManager)));
     }
     parameters.Add(this);
 }
开发者ID:nlh774,项目名称:DotNetReferenceSource,代码行数:14,代码来源:ServiceCredentials.cs


注:本文中的System.ServiceModel.Channels.BindingParameterCollection.Find方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。