1: BasicHttpBinding binding = new BasicHttpBinding();
2: binding.AllowCookies = false;
3: binding.ReceiveTimeout = new TimeSpan(0, 10, 0);
4: binding.SendTimeout = new TimeSpan(0, 5, 0);
5: binding.OpenTimeout = new TimeSpan(0, 5, 0);
6: binding.BypassProxyOnLocal = false;
7: binding.MessageEncoding = WSMessageEncoding.Mtom;
8: binding.TextEncoding = Encoding.UTF8;
9: binding.TransferMode = TransferMode.Streamed;
10:
11: //buffer size
12: binding.MaxBufferSize = 65536;
13: binding.MaxBufferPoolSize = 534288;
14: binding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
15:
16: //quotas
17: binding.ReaderQuotas.MaxDepth = 32;
18: binding.ReaderQuotas.MaxStringContentLength = 8192;
19: binding.ReaderQuotas.MaxArrayLength = 16384;
20: binding.ReaderQuotas.MaxBytesPerRead = 4096;
21: binding.ReaderQuotas.MaxNameTableCharCount = 16384;
22:
23: binding.Security.Mode = BasicHttpSecurityMode.Transport;
24: binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
25: binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.None;
26: binding.Security.Message.ClientCredentialType = BasicHttpMessageCredentialType.UserName;
27:
28: return binding;