首页 新闻 会员 周边 捐助

HttpUtility.ParseQueryString()在.NET Core中的对应实现是什么

0
悬赏园豆:20 [已解决问题] 解决于 2016-12-21 23:12

.NET Framework的System.Web中有个HttpUtility.ParseQueryString()静态方法,请问在.NET Core中的对应实现是什么?

dudu的主页 dudu | 高人七级 | 园豆:30734
提问于:2016-12-21 21:24
< >
分享
最佳答案
1

遇到过这个问题,采用QueryHelpers.ParseQuery()做的替换,需要引入包Microsoft.AspNetCore.WebUtilities

不足之处是没有重写ToString()方法来生成组装后的Url,所以手动写了一个扩展方法:

        public static string ToQueryString(this Dictionary<string, StringValues> dict)
        {
            return string.Join("&", dict.Select(x => $"{x.Key}={x.Value}"));
        }

不知道有没有更好的解决方案


收获园豆:20
brusw | 小虾三级 |园豆:746 | 2016-12-21 21:49

最终采用 QueryHelpers.ParseQuery() 结合 QueryString.Create() 实现了。

var url = uri.AbsolutePath + QueryString.Create(dict).ToUriComponent();



dudu | 园豆:30734 (高人七级) | 2016-12-21 23:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册