/// <summary>
 /// 构造方法
 /// </summary>
 /// <param name="method"></param>
 /// <param name="credential"></param>
 /// <param name="address"></param>
 /// <param name="contentType"></param>
 public WfServiceAddressDefinition(WfServiceRequestMethod method,
                                   WfNetworkCredential credential, string address, WfServiceContentType contentType)
 {
     this.RequestMethod = method;
     this.Credential    = credential;
     this.Address       = address;
     this.ContentType   = contentType;
 }
 /// <summary>
 /// 构造方法
 /// </summary>
 /// <param name="method"></param>
 /// <param name="address"></param>
 /// <param name="contentType"></param>
 public WfServiceAddressDefinition(
     WfServiceRequestMethod method,
     string address,
     WfServiceContentType contentType)
 {
     this.RequestMethod = method;
     this.Address       = address;
     this.ContentType   = contentType;
 }
        /// <summary>
        /// 从配置项初始化
        /// </summary>
        /// <param name="element"></param>
        public void FromConfigurationElement(WfServiceAddressDefinitionConfigurationElement element)
        {
            element.NullCheck("element");

            this.Key           = element.Name;
            this.RequestMethod = element.RequestMethod;
            this.ContentType   = element.ContentType;
            this.ServiceNS     = element.ServiceNS;

            this.Address = element.Uri.ToUriString();

            if (element.Identity != null)
            {
                this.Credential = new WfNetworkCredential(element.Identity.LogOnNameWithoutDomain, element.Identity.Password, element.Identity.Domain);
            }
        }
        public WfServiceOperationDefinition SetAddress(WfServiceRequestMethod method, string address, WfServiceContentType contentType, WfNetworkCredential credential)
        {
            this.AddressDef = new WfServiceAddressDefinition(method, credential, address, contentType);

            return(this);
        }