Request.Form从值中删除+符号

时间:2015-03-04 14:44:35

标签: c# asp.net

我在asp.net webform(.net 3.5)应用程序中有一个ashx处理程序,我必须用表单字段数据初始化一些对象。 字段之一是“To”是具有类似To = + 1852931591的数据的电话领域 问题是,当我通过简单的context.Request.Form [“To”]将它填充到对象中时,它正在删除+符号。 我甚至尝试过htmlencode / decode但没什么用。

我的代码就像

var listValues = new Dictionary<string, string>();
                foreach (string key in context.Request.Form.AllKeys.Where(k => !String.IsNullOrEmpty(k)))
                {
                    listValues.Add(key, context.Request.Form[key]);
                }

1 个答案:

答案 0 :(得分:1)

+是一种在URL中指示空格的方法。该值将被解释为[space]1852931591

如果您希望在查询值中加号,则需要将其编码为%2B,或者最好使用encodeURIComponent()等编码所有查询值。