Question

I have a base URL :

http://my.server.com/folder/directory/sample

And a relative one :

../../other/path

How to get the absolute URL from this ? It's pretty straighforward using string manipulation, but I would like to do this in a secure way, using the Uri class or something similar.

It's for a standard a C# app, not an ASP.NET one.

Was it helpful?

Solution

var baseUri = new Uri("http://my.server.com/folder/directory/sample");
var absoluteUri = new Uri(baseUri,"../../other/path");

OR

Uri uri;
if ( Uri.TryCreate("http://base/","../relative", out uri) ) doSomething(uri);

OTHER TIPS

Some might be looking for Javascript solution that would allow conversion of urls 'on the fly' when debugging

var absoluteUrl = function(href) {
    var link = document.createElement("a");
    link.href = href;
    return link.href;
} 

use like:

absoluteUrl("http://google.com")

http://google.com/

or

absoluteUrl("../../absolute")

http://stackoverflow.com/absolute

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top