2010-01-29 51 views
19

通常我只想改變一個一個 URI的一部分,並返回一個新的URI對象。.NET URI:如何更改URI的一部分?

在我目前的困境中,我想追加.nyud.net,使用CoralCDN。

我有一個完全限定的URI fullUri。我怎麼能這樣做:

fullUri.Host = fullUri.Host + ".nyud.net"; 

這需要適用於幾乎所有的URL,並且需要維護請求的端口。

任何幫助將不勝感激。

回答

37

您可以使用UriBuilder來修改Uri的各個部分:

Uri uri = new Uri("http://stackoverflow.com/questions/2163191/"); 

UriBuilder builder = new UriBuilder(uri); 
builder.Host += ".nyud.net"; 

Uri result = builder.Uri; 
// result is "http://stackoverflow.com.nyud.net/questions/2163191/" 
+1

我怎麼會這麼愚蠢?我不知道那是否存在。謝謝! – 2010-01-29 16:11:22