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

  • ecf150king

    ecf150king

    20 Ocak 2006
  • The Bad Tutorials

    The Bad Tuto

    6 EKİM 2009
  • The White House

    The White Ho

    21 Ocak 2006