SORU
8 Ocak 2009, PERŞEMBE


Neden yok't benim ChannelFactory bitiş noktası yapılandırması mü?

Miguel XML üzerinde Castro'nun mükemmel bir makale here takip ediyorum ve tüm iyi, aşağıdaki kodu dışında çalışıyor

public AdminClient()
{
    ChannelFactory<IProductAdmin> factory = new ChannelFactory<IProductAdmin>();
    productAdminChannel = factory.CreateChannel();
}

Benim app.yapılandırma dosyası, aşağıdaki yapılandırma var:

<system.serviceModel>
    <client>
    	<endpoint address="net.tcp://localhost:8002/ProductBrowser"
    			  binding="netTcpBinding"
    			  contract="Contracts.IProductAdmin" />
    </client>
</system.serviceModel>

Ama, AdminClient için yapıcı çalıştırdığımda bir özel durum bitiş tanımlı olmadığını söylediler. Benim yapılandırma son nokta bir isim vermem değiştirin ve sonra aşağıdaki gibi fabrika oluşturun, ancak, çalışır.

public AdminClient()
{
    var fac = new ChannelFactory<IProductAdmin>("admin");
    productAdminChannel = fac.CreateChannel();
}

< / ^ hr .

<system.serviceModel>
    <client>
    	<endpoint name="admin" 
    			  address="net.tcp://localhost:8002/ProductBrowser"
    			  binding="netTcpBinding"
    			  contract="Contracts.IProductAdmin" />
    </client>
</system.serviceModel>

Bunun için bir açıklama istiyorum. MSDN belgelerinde pek yardımcı değil...

CEVAP
12 ŞUBAT 2010, Cuma


Kullanım "*" ilk eleme son nokta kullanın.

public AdminClient()
{
    ChannelFactory<IProductAdmin> factory  
         = new ChannelFactory<IProductAdmin>("*");

    productAdminChannel = factory.CreateChannel();
}

MSDN Example

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andrey Menshikov

    Andrey Mensh

    28 Ocak 2012
  • kylediablo

    kylediablo

    8 Ocak 2007
  • wolfys you tube

    wolfys you t

    22 Kasım 2006