随笔分类 -  ASP.NET

Web控件、Web页面、页面周期、一些常见技术
Request 接收参数乱码原理解析三:实例分析
摘要:通过前面两篇《Request 接收参数乱码原理解析一:服务器端解码原理》和《Request 接收参数乱码原理解析二:浏览器端编码原理》,了解了服务器和浏览器编码解码的原理,接下来结合项目中遇到的具体问题,分析乱码问题的解决方法。 1.用户身份验证Cookie乱码问题 用户登录后,通常用Co... 阅读全文
posted @ 2014-12-30 22:35 陈晨 阅读(3413) 评论(2) 推荐(0) 编辑
Request 接收参数乱码原理解析二:浏览器端编码原理
摘要:上一篇《Request 接收参数乱码原理解析一:服务器端解码原理》,分析了服务器端解码的过程,那么浏览器是根据什么编码的呢? 1. 浏览器解码 浏览器根据服务器页面响应Header中的“Content-Type: text/html;charset=gb2312”解码。修改web.co... 阅读全文
posted @ 2014-12-24 22:29 陈晨 阅读(28234) 评论(0) 推荐(2) 编辑
Request 接收参数乱码原理解析一:服务器端解码原理
摘要:“Server.UrlDecode(Server.UrlEncode("北京")) == “北京””,先用UrlEncode编码然后用UrlDecode解码,这条语句永远为true吗?答案是否定的,结果可能与很多人预想的不大一样。本文主要分析这一问题出现的原理,研究下Server.UrlEn... 阅读全文
posted @ 2014-12-18 22:15 陈晨 阅读(21923) 评论(10) 推荐(5) 编辑
解决firefox和IE9对icon font字体的跨域访问问题
摘要:何为跨域访问,为什么会有跨域限制?一切还得从浏览器的同源策略说起。 同源策略:是浏览器最核心也是最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能会受到影响,可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。 浏览器的同源策略:限制了来自不同源的“document... 阅读全文
posted @ 2014-08-04 23:03 陈晨 阅读(15216) 评论(1) 推荐(1) 编辑
最近修改的几个小bug
摘要:最近修改的几个 bug,问题不大,查找起来却几番周折,汇总起来如下。 1.诡异电话号码 客服邮件反馈,很多用户服务热线变成了“0371-45875487”。看到这问题的第一反映是可能因为程序某个地方有人不小心写死了“0371-45875487”,因为服务热线对应数据库为一个字段Serv... 阅读全文
posted @ 2014-05-25 11:50 陈晨 阅读(1587) 评论(1) 推荐(0) 编辑
IE6鼠标闪烁之谜
摘要:有用户反映用IE6访问网站,鼠标悬停在搜索输入框时,鼠标会一直闪烁并呈沙漏等待状,还录制了视频,截图如下。看到这问题,有点懵了,网页什么元素还能控制到鼠标呢?这不是鼠标忙的手势吗?程序员的思维来了,肯定电脑问题,和程序无关,叫客服搞定吧。不行,客户一直纠结,必须得解决了。静下心来想解决问题的方法,开始尝试baidu搜索了一些“鼠标 web 忙 闪”之类的关键词,无果。后来仔细分析,应该是鼠标滑到输入框后,执行操作造成的,检查代码,发现有onmousemove="this.className='inputstyle_move'" 事件,会不会是这个造成的呢?改 阅读全文
posted @ 2012-09-09 17:43 陈晨 阅读(1316) 评论(2) 推荐(0) 编辑
小改动大效果:记一次CPU负载高问题排查和解决
摘要:问题缘起:收到运维同事发来的邮件,说自上次网站更新后,CPU使用率上升趋势明显(下图中红框部分所示),但网站访问数并没有增加。 问题排查:是什么原因导致CPU使用率上升呢?肯定是某个访问量比较大的页面进行了耗CPU的操作,如文件读写、内存中的一些复杂运算等。结合上次网站更新内容,将问题锁定在了房源详情页。主要涉及到读xml文件(最大的有2M多)到DataTable中,每次打开页面时根据DataTable中的两个列值判断在这个DataTable中有没有,比较严重的是读文件没加缓存,造成了频繁的读文件,使CPU一直处于忙碌状态。 找到了问题所在,修改起来就容易多了,增加缓存就好了,下面是修改... 阅读全文
posted @ 2011-09-26 23:14 陈晨 阅读(6930) 评论(12) 推荐(1) 编辑
<img/>标签onerror事件在IE下的bug和解决方法
摘要:IE下打开网页时,会弹出“Stack overflow at line: 0”的弹框。经分析,这个bug是由于img标签的onerror事件引起的。程序中用到的代码片段如下:正常情况下显示src所指路径的图片,加载失败时显示通过img标签的onerror事件显示另一张图片,问题就出现在了这里,当另一张图片也不存在时,就造成了循环触发onerror事件,在IE下就会弹出“stack overflow”的弹框。 阅读全文
posted @ 2011-01-12 21:14 陈晨 阅读(7584) 评论(0) 推荐(0) 编辑
动态创建WebService
摘要:通过添加Web引用的方式,让.NET编译器帮我们生成服务代理,然后调用对应的Web服务,这种方式最简单,但却和Web服务的地址、方法名、参数全都绑定在了一起,如果Web服务的方法或者是参数发生改变,就需要重新添加引用,使用起来不大方便,于是想到了动态创建调用WebService。 阅读全文
posted @ 2010-11-08 00:40 陈晨 阅读(5851) 评论(9) 推荐(0) 编辑
网站访问量大+数据量大=>看似简单的SQL语句也会搞挂系统
摘要:一个简单的SQL语句:select count(1) from tableName with(nolock) where columnA=A and columnB=B and columnC=C,被一个关键页面调用,虽然加了Memcache缓存,但由于数据结构设计问题,造成了数据库服务器CPU负载高达100%,关键页面响应超时,造成极其不好的影响。 究其原因,缺少索引,数据结构设计之初,没有为该... 阅读全文
posted @ 2010-11-02 08:05 陈晨 阅读(2237) 评论(3) 推荐(0) 编辑
ASP.NET如何防止页面重复提交
摘要:ASP.NET项目中经常会遇到这样的情况:页面提交后需要很长的处理时间,用户耐心受到挑战就开始摧残页面上的提交按钮,造成了该页面重复提交多次,带来意想不到的问题。在项目实践中,采用了一种比较简单的方式解决这种问题:用户点击提交按钮后,通过JavaScript脚本将提交按钮disable掉,同时显示动画提示用户系统正在处理,并触发服务器端事件。 阅读全文
posted @ 2008-09-11 00:25 陈晨 阅读(7359) 评论(10) 推荐(2) 编辑
通过免费手机短信来控制电脑---“执行者”插件开发之火车换乘信息查询
摘要:执行者软件的功能是用手机短信息控制电脑并将操作结果以手机短信的形式发送给用户。通过发短信可以控制电脑关机,查询机器性能,查询天气等,并把结果通过手机短信发送给你。在原有功能的基础上,开发了两站之间火车车次查询功能,使您可在没有网络的情况下用手机方便的查询两地之间直达的火车车次信息。 阅读全文
posted @ 2008-06-29 03:29 陈晨 阅读(924) 评论(3) 推荐(0) 编辑
通过免费手机短信来控制电脑---“执行者”插件开发之公交换乘信息查询
摘要:执行者软件的功能是用手机短信息控制电脑并将操作结果以手机短信的形式发送给用户。通过发短信可以控制电脑关机,查询机器性能,查询天气等,并把结果通过手机短信发送给你。在原有功能的基础上,开发了北京公交线路换乘信息查询功能,使您可在没有网络的情况下用手机方便的查询两公交站之间的换乘车次。 阅读全文
posted @ 2008-06-22 00:07 陈晨 阅读(893) 评论(3) 推荐(0) 编辑
.NET表单身份验证
摘要:ASP.NET Forms 身份验证的简单实现:1)在Web.config文件中配置应用程序使用 Forms 身份验证;2)创建登陆页面,将用户身份验证票证添加到Cookie集合。但这里并不想过多的讨论Forms身份验证的具体实现,希望和大家分析登陆状态有效时间的实现问题。 阅读全文
posted @ 2008-06-17 22:05 陈晨 阅读(6385) 评论(8) 推荐(1) 编辑
ASP.NET的错误处理机制
摘要: 对Web应用程序来说,发生不可预知的错误和异常在所难免,我们必须为Web程序提供错误处理机制。当错误发生时,我们必须做好两件事情:一是将错误信息记录日志,发邮件通知网站维护人员,方便技术人员对错误进行跟踪处理;二是以友好的方式提示最终用户页面发生了错误,而不能将未处理的错误信息显示给用户。 阅读全文
posted @ 2008-06-14 18:40 陈晨 阅读(5924) 评论(3) 推荐(1) 编辑
Error Handling in ASP.NET(转载)
摘要: When errors occur in an ASP.NET application, they either get handled or propagates unhandled to higher scopes. When an unhandled exception propagates, the user may be redirected to an error page using different ASP.NET configuration settings. However, such a redirection may be prevented in the first place by handling the exceptions that get thrown. Error handling in ASP.NET therefore, may be divided into two separate logics: 1.Redirecting the user to an error page when errors go 阅读全文
posted @ 2008-06-05 12:47 陈晨 阅读(947) 评论(0) 推荐(0) 编辑
ASP.NET 2.0中发送电子邮件
摘要:ASP.NET 2.0 中发送电子邮件变得非常简单。发送电子邮件的类库主要在命名空间System.Net.Mail中,在这个命名空间中有两个核心类是: · MailMessage:描述一个电子邮件消息;它拥有From,To,Subject,Body等属性; · SmtpClient:把一个指定的MailMessage实例发送到一个指定的SMTP服务器。 阅读全文
posted @ 2008-06-05 00:03 陈晨 阅读(6194) 评论(13) 推荐(2) 编辑
DataGrid动态绑定模板列
摘要:在DataGrid中显示手机短信过滤类型(手机号码,业务推广短信,帐户变动短信,节日祝福短信),表示是否向手机号码相应类型的短信。由于被过滤的短信类型可能会动态添加,因此绑定DataGrid时只能通过后台动态绑定,以便增加短信类型时不用修改aspx页面。 阅读全文
posted @ 2008-05-28 23:48 陈晨 阅读(3257) 评论(1) 推荐(0) 编辑