public class BindingConstraint
{
public bool Constraint(ServiceEndpoint endpoint)
bool flag = false;
switch (endpoint.Binding.Name)
case "BasicHttpBinding":
//check the BasicHttpBinding;
flag = true;
break;
case "NetTcpBinding":
//check the NetTcpBinding;
case "NetPeerTcpBinding":
//check the NetPeerTcpBinding;
//...Other bindings' constraint;
}
return flag;
private static BindingConstraint m_bindingConstraint = BindingConstraintFactory.CreateConstraint();
public void AddServiceEndpoint(ServiceEndpoint endpoint)
if (m_bindingConstraint.Constraint(endpoint))
m_endpointsList.Add(endpoint);
《软件设计精要与模式》
《WCF服务编程》