c# - QueryString 正在获取第一个子字符串并丢弃剩余的帖子空间
问题描述
我有一个查询字符串,它在 C# 中传递 6 个参数,如下所示
string url = "Report.aspx?Desc=" + Desc.SelectedValue + "&PON=" + PNumber.Text + "&InsNme=" + ins.ToUpper().ToString() + "&BackTy=" + cb.SelectedValue + "&StartDate=" + txtDate.Text + "&EndDate=" + txtTodate.Text + "&Name=" + nme;
string s = "window.open('" + url + "', 'popup_window', 'width=1500,height=800,left=200,top=150,resizable=yes');";
ClientScript.RegisterStartupScript(this.GetType(), "script", s, true);
现在,在上面的字符串InsNme
中包含一个值John Patrice Joanne
。InsNme
Report.aspx
而不是contains just的完整值John
。如何处理?
解决方案
名称中的空格会破坏 URL。
如果你想自己做,用 %20 替换空格。否则,一个简单但并不接近“好”技术的地方是:
url = "Report.aspx?";
// for each name value pair ...
url += dataLabel + "=" + System.Web.HttpUtility.UrlEncode( dataChunk ) +"&";
该实用程序是首选,因为它会处理其他类似的问题,例如名称中的文字“&”。
检查此答案以获得更好的解决方案。 如何在 C# 中为 URL 构建查询字符串?
推荐阅读
- loops - 如何替换循环中的单词[Dart]
- javascript - Angular *ngIf 异步作为具有多个相同级别条件的变量不起作用
- sql - 始终将 15 行聚合为 1 行
- firebase - firebase deploy 不将功能部署到 Firebase 项目
- python - 如何将 Pyspark 中由某些字符分隔的每个单词大写?
- java - 如何为 Android 中的 Java 弹出菜单设置自定义主题?
- r - 如何在`purrr::map`中使用`dplyr::filter`
- listview - 如何在 xamarin 表单的列表视图中使用 Web 视图
- c# - 为什么 IdentityServer 不认为 url 有效?
- php - ajax url 总是重定向到索引