//------------------------------------------------------------------------------
// 
//     此代码由工具生成。
//
//     对此文件的更改可能导致不正确的行为,并在以下条件下丢失:
//     代码重新生成。
// 
//------------------------------------------------------------------------------
namespace CCWcfService
{
    using System.Runtime.Serialization;
    
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.1.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="FunRetEntity", Namespace="http://schemas.datacontract.org/2004/07/iWareModel")]
    public partial class FunRetEntity : object
    {
        
        private object resDataField;
        
        private string resMsgField;
        
        private bool resultField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public object resData
        {
            get
            {
                return this.resDataField;
            }
            set
            {
                this.resDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string resMsg
        {
            get
            {
                return this.resMsgField;
            }
            set
            {
                this.resMsgField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool result
        {
            get
            {
                return this.resultField;
            }
            set
            {
                this.resultField = value;
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.1.0")]
    [System.ServiceModel.ServiceContractAttribute(ConfigurationName="CCWcfService.ICCWcfService")]
    public interface ICCWcfService
    {
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICCWcfService/IsStartedModel", ReplyAction="http://tempuri.org/ICCWcfService/IsStartedModelResponse")]
        System.Threading.Tasks.Task IsStartedModelAsync();
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICCWcfService/WriteStation_AllowIn", ReplyAction="http://tempuri.org/ICCWcfService/WriteStation_AllowInResponse")]
        System.Threading.Tasks.Task WriteStation_AllowInAsync();
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.1.0")]
    public interface ICCWcfServiceChannel : CCWcfService.ICCWcfService, System.ServiceModel.IClientChannel
    {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.1.0")]
    public partial class CCWcfServiceClient : System.ServiceModel.ClientBase, CCWcfService.ICCWcfService
    {
        
        /// 
        /// 实现此分部方法,配置服务终结点。
        /// 
        /// 要配置的终结点
        /// 客户端凭据
        static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials);
        
        public CCWcfServiceClient() : 
                base(CCWcfServiceClient.GetDefaultBinding(), CCWcfServiceClient.GetDefaultEndpointAddress())
        {
            this.Endpoint.Name = EndpointConfiguration.BasicHttpBinding_ICCWcfService.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public CCWcfServiceClient(EndpointConfiguration endpointConfiguration) : 
                base(CCWcfServiceClient.GetBindingForEndpoint(endpointConfiguration), CCWcfServiceClient.GetEndpointAddress(endpointConfiguration))
        {
            this.Endpoint.Name = endpointConfiguration.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public CCWcfServiceClient(EndpointConfiguration endpointConfiguration, string remoteAddress) : 
                base(CCWcfServiceClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress))
        {
            this.Endpoint.Name = endpointConfiguration.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public CCWcfServiceClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(CCWcfServiceClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress)
        {
            this.Endpoint.Name = endpointConfiguration.ToString();
            ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
        }
        
        public CCWcfServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress)
        {
        }
        
        public System.Threading.Tasks.Task IsStartedModelAsync()
        {
            return base.Channel.IsStartedModelAsync();
        }
        
        public System.Threading.Tasks.Task WriteStation_AllowInAsync()
        {
            return base.Channel.WriteStation_AllowInAsync();
        }
        
        public virtual System.Threading.Tasks.Task OpenAsync()
        {
            return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen));
        }
        
        private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration)
        {
            if ((endpointConfiguration == EndpointConfiguration.BasicHttpBinding_ICCWcfService))
            {
                System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding();
                result.MaxBufferSize = int.MaxValue;
                result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max;
                result.MaxReceivedMessageSize = int.MaxValue;
                result.AllowCookies = true;
                return result;
            }
            throw new System.InvalidOperationException(string.Format("找不到名称为“{0}”的终结点。", endpointConfiguration));
        }
        
        private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration)
        {
            if ((endpointConfiguration == EndpointConfiguration.BasicHttpBinding_ICCWcfService))
            {
                return new System.ServiceModel.EndpointAddress("http://localhost:8734/Design_Time_Addresses/iWareCC.WCF/CCWcfService/");
            }
            throw new System.InvalidOperationException(string.Format("找不到名称为“{0}”的终结点。", endpointConfiguration));
        }
        
        private static System.ServiceModel.Channels.Binding GetDefaultBinding()
        {
            return CCWcfServiceClient.GetBindingForEndpoint(EndpointConfiguration.BasicHttpBinding_ICCWcfService);
        }
        
        private static System.ServiceModel.EndpointAddress GetDefaultEndpointAddress()
        {
            return CCWcfServiceClient.GetEndpointAddress(EndpointConfiguration.BasicHttpBinding_ICCWcfService);
        }
        
        public enum EndpointConfiguration
        {
            
            BasicHttpBinding_ICCWcfService,
        }
    }
}