İlginizi Çekebilir
  1. Ana Sayfa
  2. C Sharp
  3. Web Service – Endpoint Hatası ve Çözümü

Web Service – Endpoint Hatası ve Çözümü

Web Service – Endpoint Hatası ve Çözümü

Web Service – Endpoint Hatası ve Çözümü, dersim ile C# eğitim setime devam ediyorum. Bu dersimizde C# Web servis ile ilgili çalışmalarımda karşılaştığım bir hata olan Endpoint hatasının çözümünü içerir.

Web Service – Endpoint Hatası

Bir web service ile çalışmaya başladığnızda bu hatayı alma olasılığınız çok yüksektir. Bu sebeple bu hatanın çözümünü paylaşmak istedim. Bu hatanın tam şekli şöyledir.

“An unhandled exception of type ‘System.InvalidOperationException’ occurred in System.ServiceModel.dll

Additional information: İlgili sözleşme için birden fazla bitiş noktası yapılandırması bulunduğundan ‘…’ sözleşmesi bitiş noktası yapılandırma bölümü yüklenemedi. Tercih edilen bitiş noktası yapılandırması bölümünü adıyla belirtin.”

 

Hatanın görseli de aşağıdaki gibidir.

Web-Service-Endpoint-Hatası-ve-Çözümü

 

Web Service – Endpoint Hatası Çözümü

Hatanın kaynağı App.Config dosyası ile ilgilidir. App.Config dosyasını açtığınızda aşağıdaki gibi görünecektir.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
    </startup>
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="GlobalWeatherSoap" />
            </basicHttpBinding>
            <customBinding>
                <binding name="GlobalWeatherSoap12">
                    <textMessageEncoding messageVersion="Soap12" />
                    <httpTransport />
                </binding>
            </customBinding>
        </bindings>
        <client>
            <endpoint address="http://www.webservicex.net/globalweather.asmx" binding="basicHttpBinding" bindingConfiguration="GlobalWeatherSoap" contract="ServiceReference1.GlobalWeatherSoap" name="GlobalWeatherSoap" />
            <endpoint address="http://www.webservicex.net/globalweather.asmx" binding="customBinding" bindingConfiguration="GlobalWeatherSoap12" contract="ServiceReference1.GlobalWeatherSoap" name="GlobalWeatherSoap12" />
        </client>
    </system.serviceModel>
</configuration>

Projenize göre bu App.Config dosyasının içi dolacaktır. Yukarıda basit bir App.Config dosyası görüyorsunuz. Dersimize konu olan hatanın sebebi yukarıda gördüğünüz <client> </client> nodesi içinde yer alan <endpoint/> nodesi ile ilgilidir. Yukarıda gördüğünüz App.Config dosyasında endpoint nodesi aynı web servis için iki kere tanımlanmış. Bazen bu şekilde iki kere ekleniyor. Bazende bir tekrar tekrar ekliyoruz. Örneğin bende iki kere eklemeden dolayı çıkmıştı. Web Service’i varsayılan isim ile eklemiştim ama sonra değiştirmek istediğim ve terkar ekledim. Aynı web Service’e atıfta bulunan iki farklı endpoint nodesi olduğundan dolayı hangisi kullanacağını bilemiyor ve hatayı veriyor.

Bu satırlardan birisini sildiğinizde hata çözülmüş olacaktır.

...
...
...
        <client>
            <endpoint address="http://www.webservicex.net/globalweather.asmx" binding="basicHttpBinding" bindingConfiguration="GlobalWeatherSoap" contract="ServiceReference1.GlobalWeatherSoap" name="GlobalWeatherSoap" />
        </client>
...
...
...

Yukarıda gördüğünüz gibi aynı web service ‘e bağlı olan satırı siliyoruz. Projenizi derlediğinizde yukarıdaki hatayı vermediğini göreceksiniz.


Web Service – Endpoint Hatası ve Çözümü dersimiz de bu kadardı arkadaşlar. Diğer derslerimizde görüşmek üzere…

C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.

Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…

Takipte ve Sağlıcakla kalın. 😉

Yorum Yap

Yazar Hakkında

Liseden, Ağ Sistemleri ve Yönetimi bölümünden mezun oldum. Üniversiteden (2 yıllık), Bilgisayar Programcılığı bölümünden mezun oldum. Şuanda da AÖF, Yönetim Bilişim Sistemleri bölümünde okumaktayım. Uzmanlık alanlarım; Windows Sistemleri, HTML, CSS, C# ve SQL’dir. Hobi olarak uğraştığım genel konular, Photoshop, After Affects, Corel Draw’dır.Film, YABANCI dizi, Anime izlemeyi ve Manga okumayı severim. Arkadaşlarımla yürüyüş yapmayı ve grup olarak aktivitelere gitmeyi severim. Geri kalan zamanlarımın tümü bilgisayar karşısında geçer.

Yorum Yap