本文整理汇总了C#中System.ServiceModel.BasicHttpBinding.IsBindingElementsMatch方法的典型用法代码示例。如果您正苦于以下问题:C# BasicHttpBinding.IsBindingElementsMatch方法的具体用法?C# BasicHttpBinding.IsBindingElementsMatch怎么用?C# BasicHttpBinding.IsBindingElementsMatch使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.ServiceModel.BasicHttpBinding
的用法示例。
在下文中一共展示了BasicHttpBinding.IsBindingElementsMatch方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TryCreate
internal static bool TryCreate(BindingElementCollection elements, out Binding binding)
{
UnifiedSecurityMode mode;
BasicHttpSecurity security2;
binding = null;
if (elements.Count > 3)
{
return false;
}
SecurityBindingElement securityElement = null;
MessageEncodingBindingElement encoding = null;
HttpTransportBindingElement http = null;
foreach (BindingElement element4 in elements)
{
if (element4 is SecurityBindingElement)
{
securityElement = element4 as SecurityBindingElement;
}
else if (element4 is TransportBindingElement)
{
http = element4 as HttpTransportBindingElement;
}
else if (element4 is MessageEncodingBindingElement)
{
encoding = element4 as MessageEncodingBindingElement;
}
else
{
return false;
}
}
HttpTransportSecurity transportSecurity = new HttpTransportSecurity();
if (!GetSecurityModeFromTransport(http, transportSecurity, out mode))
{
return false;
}
if (encoding == null)
{
return false;
}
if (!encoding.CheckEncodingVersion(System.ServiceModel.EnvelopeVersion.Soap11))
{
return false;
}
if (!TryCreateSecurity(securityElement, mode, transportSecurity, out security2))
{
return false;
}
BasicHttpBinding binding2 = new BasicHttpBinding(security2);
binding2.InitializeFrom(http, encoding);
if (!binding2.IsBindingElementsMatch(http, encoding))
{
return false;
}
binding = binding2;
return true;
}