惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
L
LangChain Blog
H
Help Net Security
博客园_首页
T
Tailwind CSS Blog
Microsoft Security Blog
Microsoft Security Blog
T
The Blog of Author Tim Ferriss
雷峰网
雷峰网
Recent Announcements
Recent Announcements
D
DataBreaches.Net
U
Unit 42
Vercel News
Vercel News
I
InfoQ
Martin Fowler
Martin Fowler
Microsoft Azure Blog
Microsoft Azure Blog
Apple Machine Learning Research
Apple Machine Learning Research
S
SegmentFault 最新的问题
Jina AI
Jina AI
博客园 - 叶小钗
博客园 - 【当耐特】
罗磊的独立博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
月光博客
月光博客
Last Week in AI
Last Week in AI

博客园 - 新悟空

通过微信公众号打开小程序 传参数给小程序 开放标签 的html 源代码 云开发的静态网站 VB6 Excel VBA 如何复制文件到剪贴板 的一个Bug修复 (用Windows API 来将文件/文件夹复制到剪贴板的源代码 ) VS2022 Blazor WebAssembly 发布前对自己的dll进行混淆 微信小程序 wx.getUserInfo 解密 C# 代码 简单的文件同步备份程序,仅支持单向同步_程序及源代码 Xilium.CefGlue CEF Chrome 自动上传文件不弹出对话框 CefDialogHandler 通过反射绑定事件_Office Visio 从红米手机经常发生UIM没有服务的一些猜想 为什么丰田的软件存在缺陷?(转) C# WebBrowser 网页缩放的方法 批《对.net系统架构改造的经验教训》所犯的N个错误 乔布斯:遗失的访谈_文字版 WebApplication 完全编译即aspx不可修改,不包括设计内容的方法 .net 使用管道方式访问mySQL的连接字符串 从智能手机App来看C/S和B/S的区别在哪?(Web的技术本质) 会员充值消费管理系统 mysql 绿色版 安装的一些脚本 分库分表的设计思路让大系统变简单 下载 针式个人知识库管理软件 V9.08 版
《ASP.NET的一些坑》的人造坑,真不是微软问题,是你的理解问题
新悟空 · 2013-05-28 · via 博客园 - 新悟空

仅说两点,实现看得蛋疼,说一下。因为出现在首页,所以就有此文。

摘录一段微博,尽量避免在技术理解错方向性问题:真不是微软问题,是你的理解问题。

“清晰的思路远比埋头苦干重要,正确的方向要比勤勤恳恳重要,做对的事情也比把事情做对重要。

常常在评价人、事时,去评价那些表面的现象,忽略了内涵。

最终,导致哪些真正有价值的人和事情被冷落了,而那些金玉其外败絮其中的东西被吹捧了出来!”

一、没有理解什么叫多线程,所以下述的结论都是错的

*****************************

在以下情形中访问HttpContext.Current将会返回null
1. 定时器的回调。
2. Cache的移除通知。
3. APM模式下异步完成回调。
4. 主动创建线程或者将任务交给线程池来执行。

*************************************

正确应是:在以下情形中,HttpContext.Current为null,不是坑,原本就如此

二、基本概念都没搞清

*****************************
QueryString,Form允许重复的KEY????

不是这样表达的吧?

字典类能允许重复的KEY,请求串中的参数名能叫Key?

*************************************

正确应是:请求串中允许相同的参数名,其值在QueryString中以“,”分隔表示。
  QueryString不会存在重复的KEY。请别误导大家。

原文:http://www.cnblogs.com/fish-li/archive/2013/05/28/3104750.html

部分摘录:

前段时间碰到一个问题:为什么在ASP.NET程序中定时器有时候会不工作?

这个问题看起来很奇怪,代码好像也没错,但就是结果与预期不一致。
其实这里是ASP.NET程序的一个陷阱,我习惯说成坑。 后来想想,其实ASP.NET的坑何止这一个,我今天就把我能想到的各种坑都写出来,希望大家小心这些问题。

想到我以前的博客中也零散的说过了一些坑,所以这篇博客中也把它们列出来了, 不过,对于以前谈过的内容,这里将只会简略地说明。

HttpContext.Current并非无处不在

这个问题是我上个月的博客中提到的问题, 原文链接:http://www.cnblogs.com/fish-li/archive/2013/04/06/3002940.html

在以下情形中访问HttpContext.Current将会返回null
1. 定时器的回调。
2. Cache的移除通知。
3. APM模式下异步完成回调。
4. 主动创建线程或者将任务交给线程池来执行。

所以,在写类库时,请注意这个问题。

Application_Start的异常与IIS经典模式

在IIS6或者II7的经典模式下运行ASP.NET程序时,如果Application_Start事件中抛出了未捕获异常, 那么 这个异常将显示一次。

关于这个问题的更多细节介绍请点击:http://www.cnblogs.com/fish-li/archive/2013/03/24/2979780.html

QueryString,Form允许重复的KEY

我们经常见到的集合,例如:Hashtable, Dictionary,它们都要求KEY是唯一的,然而, HttpRequest的QueryString,Form集合实例却 允许KEY重复,当遇到KEY重复时,通过索引器访问集合时, 会将KEY对应的所有元素值用逗号拼接起来。

为什么会这样,因为这二个集合的类型是NameValueCollection,类似的,Headers集合也是这样。

由于这个特殊性与我们常见的情形不一致,所以我们需要注意这个差别,当然了,有些时候我们还可以利用这个行为实现一些特殊的需求, 关于这个细节的更多介绍请参考:http://www.cnblogs.com/fish-li/archive/2011/12/06/2278463.html , 在这篇博客中,还介绍了HttpRequest的二个索引器也是值得我们注意的。