2012年10月24日

[ASP.NET MVC]让Html.RenderAction支持Lamda表达式

摘要: 今天在ASP.NET MVC代码时用到了Html.RenderAction,代码如下:@{Html.RenderAction("RecentNews")}通过字符串指定Action的名称,有两点不爽:1. 输入时不能智能感知;2. 输错了不能实时提示。有这两点不爽,写代码的乐趣就大减。有享受感觉的代码应该是这样的:@{Html.RenderAction<AggSiteController>(c => c.RecentNews());}是的,Lamda,给你写代码带来畅快感觉的Lamda!微软不让我们享受,我们就自己动手,丰衣足食。自己写一个支持Lamda表 阅读全文

posted @ 2012-10-24 10:02 dz45693 阅读(6835) 评论(0) 推荐(0) 编辑

使用string.Format需要注意的一个性能问题

摘要: 今天,我在写C#代码时,突然发现一个最熟悉的陌生人 —— string.Format。在写C#代码的日子里,与它朝夕相伴,却没有真正去了解它。只知道在字符串比较多时,用它比用加号进行字符串连接效率更高(当然也更方便)。可是却从来没有问过为什么?在生活中也有类似的现象,与你朝夕相处、你最熟悉的人,你往往不会进一步去了解她(他),你已经习惯了她(他),你认为你已经太了解她(他)了。。。真的是这样吗?这值得去思考。。。博问中的一个问题 ——StringBuilder,String.concat(),String+String 哪一个效率高?激发了我的好奇心,想一探string.Format的究竟,而 阅读全文

posted @ 2012-10-24 09:28 dz45693 阅读(7694) 评论(0) 推荐(2) 编辑

[IIS]修改MaxFieldLength与MaxRequestBytes彻底解决Request Too Long的问题

摘要: 当 IIS7/7.5 收到的请求头的长度超过16K(默认值),就会引发"Bad Request - Request Too Long. HTTP Error 400. The size of the request headers is too long."的错误。博客园服务器曾遭遇过这个问题,我为此写过一篇博文(cnzz统计代码引起的Bad Request - Request Too Long),问题的原因是第三方统计服务cnzz的统计代码写入大量的cookie,请求时会携带着这些cookie,从而造成请求头长度超过限制。本来以为这个问题只在Chrome中出现,后来有园友 阅读全文

posted @ 2012-10-24 09:15 dz45693 阅读(6898) 评论(0) 推荐(0) 编辑

注意!ASP.NET MVC 3 的一个 OutputCache 问题

摘要: 在用 ASP.NET MVC 3 重写博客园网站首页时,特地留意了一下这个缓存问题,通过这篇博文分享一下。在 ASP.NET MVC 3 中如果使用了 OutputCache,一定要在 Action 中添加下面的代码,切记!Response.Cache.SetOmitVaryStar(true);这是一个伴随ASP.NET从1.0到4.0的OutputCache Bug,ASP.NET MVC 3 是基于 ASP.NET 4.0 的,所以也躲不过。问题演示下面先来体验一下不加Response.Cache.SetOmitVaryStar(true); 的情况。示例Action代码:[Output 阅读全文

posted @ 2012-10-24 09:09 dz45693 阅读(7077) 评论(0) 推荐(0) 编辑

导航