Path.Combine for URLs?

前端 未结 30 2557
不思量自难忘°
不思量自难忘° 2020-11-22 14:28

Path.Combine is handy, but is there a similar function in the .NET framework for URLs?

I\'m looking for syntax like this:

Url.Combine(\"http://MyUrl.         


        
30条回答
  •  佛祖请我去吃肉
    2020-11-22 15:10

    Here's Microsoft's (OfficeDev PnP) method UrlUtility.Combine:

        const char PATH_DELIMITER = '/';
    
        /// 
        /// Combines a path and a relative path.
        /// 
        /// 
        /// 
        /// 
        public static string Combine(string path, string relative) 
        {
            if(relative == null)
                relative = String.Empty;
    
            if(path == null)
                path = String.Empty;
    
            if(relative.Length == 0 && path.Length == 0)
                return String.Empty;
    
            if(relative.Length == 0)
                return path;
    
            if(path.Length == 0)
                return relative;
    
            path = path.Replace('\\', PATH_DELIMITER);
            relative = relative.Replace('\\', PATH_DELIMITER);
    
            return path.TrimEnd(PATH_DELIMITER) + PATH_DELIMITER + relative.TrimStart(PATH_DELIMITER);
        }
    

    Source: GitHub

提交回复
热议问题