gpt4 book ai didi

c# - 将字典转换为 url 参数字符串?

转载 作者:可可西里 更新时间:2023-11-01 03:02:43 24 4
gpt4 key购买 nike

有没有办法把代码中的Dictionary转成url参数串?

例如

// An example list of parameters
Dictionary<string, object> parameters ...;
foreach (Item in List)
{
parameters.Add(Item.Name, Item.Value);
}

string url = "http://www.somesite.com?" + parameters.XX.ToString();

在 MVC HtmlHelpers 中,您可以使用 UrlHelper(或 Controller 中的 Url)生成 URL,但在 Web Forms 代码隐藏中,此 HtmlHelper 不可用。

string url = UrlHelper.GenerateUrl("Default", "Action", "Controller", 
new RouteValueDictionary(parameters), htmlHelper.RouteCollection ,
htmlHelper.ViewContext.RequestContext, true);

如果没有 MVC 帮助程序,如何在 C# Web Forms 代码隐藏(在 MVC/Web Forms 应用程序中)中完成此操作?

最佳答案

一种方法是:

var url = string.Format("http://www.yoursite.com?{0}",
HttpUtility.UrlEncode(string.Join("&",
parameters.Select(kvp =>
string.Format("{0}={1}", kvp.Key, kvp.Value)))));

您还可以使用 C#6 中引入的字符串插值:

var url = $"http://www.yoursite.com?{HttpUtility.UrlEncode(string.Join("&", parameters.Select(kvp => $"{kvp.Key}={kvp.Value}")))}";

如果您不需要 UrlEncode,您可以删除它,我只是为了完整性添加它。

关于c# - 将字典转换为 url 参数字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23518966/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com