7 Şubat 2016 Pazar

ChannelFactory Sınıfı

Giriş
1. ChannelFactory nesnesini yarat
2. ChannelFactory nesnesinin Credentials alanını doldur
3. ChannelFactory nesnesinin CreateChannel metodunu çağır.

Constructor - Endpoint İsmi
Şöyle yapar.
var channelFactory = new ChannelFactory<T>("IGeneralUtilityServiceEndPoint");
Constructor - Binding + Endpoint

1. BasicHttpBinding için 
Şöyle yaparız.
BasicHttpBinding binding = new BasicHttpBinding();
EndpointAddress address = new EndpointAddress("http://localhost/Service1.svc");
var channelfactory = new ChannelFactory<IService1>(binding, address);
Eğer istersek binding için daha fazla parametre verebiliriz.
EndpointAddress endpoint = new EndpointAddress(@"http://localhost/Service1.svc");

BasicHttpBinding basicHttpBinding = new BasicHttpBinding();
basicHttpBinding.MaxReceivedMessageSize = int.MaxValue;
basicHttpBinding.Security.Transport.ClientCredentialType = 
HttpClientCredentialType.Basic;
basicHttpBinding.Security.Mode = BasicHttpSecurityMode.TransportCredentialOnly;

var channelFactory = new ChannelFactory<IService1>(basicHttpBinding, endpoint);
2. NetNamedPipeBinding
Şöyle yaparız.
var channelfactory = new ChannelFactory<IMyService>(
    new NetNamedPipeBinding(), new EndpointAddress(hostUrl));
Credentials alanı
Şöyle yaparız.
channelFactory.Credentials.UserName.UserName = ... ;
channelFactory.Credentials.UserName.Password = ...
CreateChannel metodu
Şöyle yaparız.
var client = channelFactory.CreateChannel();



Hiç yorum yok:

Yorum Gönder