public string Combine(string path1, string path2)
{
if (path1 == null)
{
throw new ArgumentNullException("path1");
}
if (path2 == null)
{
throw new ArgumentNullException("path2");
}
if (String.IsNullOrEmpty(path2))
{
return path1;
}
if (String.IsNullOrEmpty(path1))
{
return path2;
}
if (path2.StartsWith("http://") || path2.StartsWith("https://"))
{
return path2;
}
var ch = path1[path1.Length - 1];
if (ch != '/')
{
return (path1.TrimEnd('/') + '/' + path2.TrimStart('/'));
}
return (path1 + path2);
}