views:

62

answers:

1

Often I want to change just one part of a URI and get a new URI object back.

In my current dilemma, I want to append .nyud.net, to use the CoralCDN.

I have a fully qualified URI fullUri. How can I, in effect, do this:

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

This needs to work for almost any URL, and the PORT of the request needs to be maintained.

Any help would be much appreciated.

+6  A: 

You can use an UriBuilder to modify individual parts of an 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/"
dtb
How could I be so stupid? I had no idea that that existed. Thanks!
John Gietzen