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

  • DrakeVEVO

    DrakeVEVO

    17 AĞUSTOS 2009
  • kev5124

    kev5124

    9 Kasım 2008
  • TomOdellVEVO

    TomOdellVEVO

    29 Mayıs 2012