SORU
22 AĞUSTOS 2008, Cuma


.NET - protokol, host, port Olsun

Basit bir yolu var .Hızlı bir şekilde protokol, ana bilgisayar, geçerli ve liman için NET mi? Aşağıdaki URL alıyorum, örneğin:

http://www.mywebsite.com:80/pages/page1.aspx

İade etmek istiyorum:

http://www.mywebsite.com:80

İstek kullanabilirim biliyorum.Url.AbsoluteUri tam URL almak için, ve İstek kullanabilirim biliyorum.Url.Ana bilgisayar ve bağlantı noktası almak için yetki, ama URL dize ayrıştırma olmadan protokolü elde etmek için en iyi yol olduğundan emin değilim.

Herhangi bir öneriniz var mı?

CEVAP
23 ŞUBAT 2009, PAZARTESİ


@Rick bu soru için kabul cevabı olsa da, aslında bu, kötü adlı Uri.GetLeftPart() yöntemi kullanarak yapmak için daha kısa bir yol var.

Uri url = new Uri("http://www.mywebsite.com:80/pages/page1.aspx");
string output = url.GetLeftPart(UriPartial.Authority);

GetLeftPart() ancak bir sorun var. Eğer bağlantı şeması için varsayılan bağlantı noktası varsa, dışarı şerit olacak. Port 80 http için varsayılan bağlantı noktası olduğundan, yukarıda benim örnekte GetLeftPart() çıkış http://www.mywebsite.com olacak.

Eğer port numarasını bir sonucu dahil olurdu 80, daha başka olsaydı.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • jkimisyellow...ish

    jkimisyellow

    8 Temmuz 2009
  • kruno j

    kruno j

    6 Mayıs 2007
  • Professor Messer

    Professor Me

    27 NİSAN 2007