工作日志 6/6/2014 .net URL 特殊符号 escaping的问题

来源:互联网 发布:km算法 c 代码实现 编辑:程序博客网 时间:2024/05/22 08:21

昨天遇到了一起有趣的问题,当anna输入#之后,后边的内容被自动忽略,我今天就开始搞这个问题。

和师兄聊起这个问题,他说这是特殊字符的原因,我就试了一下%23,直接被弄成#,所以是从request.QueryString(某个key的值)读的时候,他会把特殊字符自动读成原本的样子,这样一来,原本的#被忽略,原本的%23被读成了#。这个自动不要紧,把我的程序全部弄错,于是乎,需要在url的内容中,把应该的escape的特殊字符换成特殊样式,然后这就被正确读了出来。用的方法是.NET 里面的system.web.httputility里面的UrlEncode()method。

问题还伴随着疑惑,为什么读入不用escape呢,因为写入数据库,是直接的,如果escape变成特殊字符,要读出来之后还要再变回来,两次手动操作,实则没有必要,因为在数据库那边读写都没有问题,问题出在url作为string读取,.net会自动escape特殊字符。这样就得在产生之前先变到特殊,这样就规避了问题。说起来挺绕,其实就是url的问题。

下午完成了两个report insidesate,开始Research怎么把insidestate里面的rss feed调整成calendar的format,找了半天没啥进展,于是开了一局三国杀,wendy这时候就走过来问我在干吗,我说找资料,她说你正在玩游戏,于是我就是啊,她说这不行,中午break可以,于是我答应的好好的。还好吧,在这里被批评是很正常的,总比在公司里要好的多,我就开始寻思,其实性格里有很多不按照规矩蔑视之的元素,这其实是很不professional的,这个世界需要的是你每件事做的专业专注,那就得按照这个标准来,不能情绪化用事,比较一下nix和dick,他们二人谁更稳重一看便知,不要轻易显露自己的情绪,稳定沉着方是男儿本色。

0 0