EndpointAddress remoteAddress = new EndpointAddress(WebServiceURL);
TestServiceClient serviceClient = new TestServiceClient(GetBinding(), remoteAddress);
serviceClient.ClientCredentials.UserName.UserName = userNameValue;
serviceClient.ClientCredentials.UserName.Password = passwordValue;
serviceClient.Open();
UpdatePaymentStatusRequest newRequest = new UpdatePaymentStatusRequest();
newRequest.Status="Paid";
UpdatePaymentStatusResponse newResponse=newRequest.UpdateStatus(newRequest);
serviceClient.Close();
public static CustomBinding GetBinding()
{
CustomBinding binding = new CustomBinding();
binding.Name = "Name_of_your_binding";
binding.CloseTimeout = TimeSpan.Parse("00:05:00");
binding.OpenTimeout = TimeSpan.Parse("00:05:00");
binding.ReceiveTimeout = TimeSpan.Parse("00:10:00");
binding.SendTimeout = TimeSpan.Parse("00:10:00");
binding.Elements.Add(new TextMessageEncodingBindingElement(MessageVersion.Soap12, System.Text.Encoding.UTF8));
// HttpsTransportBindingElement hbe = new HttpsTransportBindingElement();
HttpTransportBindingElement hbe = new HttpTransportBindingElement();
// hbe.RequireClientCertificate = true;
hbe.AllowCookies = false;
hbe.AuthenticationScheme = System.Net.AuthenticationSchemes.Basic;
hbe.BypassProxyOnLocal = false;
hbe.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
hbe.KeepAliveEnabled = true;
hbe.ManualAddressing = false;
hbe.MaxBufferPoolSize = Convert.ToInt64(int.MaxValue);
hbe.MaxBufferSize = int.MaxValue;
hbe.MaxReceivedMessageSize = Convert.ToInt64(int.MaxValue);
hbe.ProxyAuthenticationScheme = System.Net.AuthenticationSchemes.Anonymous;
hbe.Realm = "";
hbe.TransferMode = TransferMode.Buffered;
hbe.UnsafeConnectionNtlmAuthentication = false;
hbe.UseDefaultWebProxy = true;
binding.Elements.Add(hbe);
return binding;
}
Reference :
http://technologybooth.blogspot.sg/2013/08/initializing-wcf-client-programmatically.html
No comments:
Post a Comment