C#中Uri操作

  在現在的項目中,使用到uri的部分較多。

創新互聯服務項目包括正定網站建設、正定網站制作、正定網頁制作以及正定網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,正定網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到正定省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!

  1. uri的解析方法:

 public static Uri ReturnUri(this string val)
        {
            if (string.IsNullOrEmpty(val))
            {
                throw new ArgumentNullException(val);
            }
            try
            {
                UriBuilder uri;

                if (val.StartsWith("http://", StringComparison.Ordinal))
                {
                    uri = new UriBuilder(val);
                }
                else if (val.StartsWith("https://", StringComparison.Ordinal))
                {
                    uri = new UriBuilder(val);
                }
                else if (val.Contains(":"))
                {
                    var split = val.Split(':', '/');
                    int port;
                    int.TryParse(split[1], out port);

                    uri = split.Length == 3
                        ? new UriBuilder(Uri.UriSchemeHttp, split[0], port, "/" + split[2])
                        : new UriBuilder(Uri.UriSchemeHttp, split[0], port);
                }
                else
                {
                    uri = new UriBuilder(Uri.UriSchemeHttp, val);
                }

                return uri.Uri;
            }
            catch (Exception exception)
            {
                throw new Exception(exception.Message, exception);
            }
        }

2.uri解析的重載:

  public static Uri ReturnUri(this string val, int port, bool ssl = default(bool))
        {
            if (string.IsNullOrEmpty(val))
            {
                throw new ArgumentNullException(val);
            }
            try
            {
                UriBuilder uri;

                if (val.StartsWith("http://", StringComparison.Ordinal))
                {
                    var split = val.Split('/');
                    uri = split.Length >= 4 ? new UriBuilder(Uri.UriSchemeHttp, split[2], port, "/" + split[3]) : new UriBuilder(new Uri($"{val}:{port}"));
                }
                else if (val.StartsWith("https://", StringComparison.Ordinal))
                {
                    var split = val.Split('/');
                    uri = split.Length >= 4
                        ? new UriBuilder(Uri.UriSchemeHttps, split[2], port, "/" + split[3])
                        : new UriBuilder(Uri.UriSchemeHttps, split[2], port);
                }
                else if(ssl)
                {
                    uri = new UriBuilder(Uri.UriSchemeHttps, val, port);
                }
                else
                {
                    uri = new UriBuilder(Uri.UriSchemeHttp, val, port);
                }

                return uri.Uri;
            }
            catch (Exception exception)
            {
                throw new Exception(exception.Message, exception);
            }
        }

  public static Uri ReturnUriWithSubDir(this string val, int port, bool ssl, string subDir)
        {
            var uriBuilder = new UriBuilder(val);
            if (ssl)
            {
                uriBuilder.Scheme = Uri.UriSchemeHttps;
            }
            if (!string.IsNullOrEmpty(subDir))
            {
                uriBuilder.Path = subDir;
            }
            uriBuilder.Port = port;

            return uriBuilder.Uri;
        }

文章題目:C#中Uri操作
瀏覽地址:http://m.kartarina.com/article46/pihgeg.html

成都網站建設公司_創新互聯,為您提供品牌網站設計搜索引擎優化網站設計公司響應式網站動態網站小程序開發

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

綿陽服務器托管
主站蜘蛛池模板: 无码国产乱人伦偷精品视频 | 麻豆亚洲AV成人无码久久精品| 无码精品A∨在线观看无广告| 免费a级毛片无码av| 亚洲欧洲自拍拍偷午夜色无码| 亚洲综合无码一区二区三区| 国产成人无码av在线播放不卡| 亚洲AV无码一区东京热| 国产免费av片在线无码免费看| 亚洲AV无码一区东京热久久| 精品无码人妻久久久久久| 精品深夜AV无码一区二区老年| 国产AV无码专区亚洲AV手机麻豆 | 无码一区二区三区中文字幕| 国产av无码专区亚洲av果冻传媒| 久久亚洲精品无码av| 久久无码人妻一区二区三区| 中日精品无码一本二本三本| 亚洲6080yy久久无码产自国产| 精品无码久久久久久午夜| 无码137片内射在线影院| 超清纯白嫩大学生无码网站| 精品久久久久久无码人妻| 99热门精品一区二区三区无码| 亚洲欧洲日产国码无码网站| 日韩综合无码一区二区| 无码乱码观看精品久久| 精品无码av无码专区| 无码任你躁久久久久久久 | 精品人体无码一区二区三区| 无码国产激情在线观看| 在线观看无码AV网址| 色综合久久无码五十路人妻| 亚洲成AV人片在线播放无码| 亚洲AV无码一区东京热| 久久久久亚洲AV无码专区体验| 久久久国产精品无码免费专区| 无码人妻精品一区二区三区夜夜嗨 | 中文字幕无码亚洲欧洲日韩| 亚洲最大天堂无码精品区| 亚洲精品无码久久|