12 2010 档案
摘要:ASP.NET MVC 3.0 RC相较于2.0 RTM增加了10个左右的接口、类或枚举来增强Filter,并且为ControllerActionInvoker增加了2个构造函数来配合这一切。目前白皮书上只有寥寥几句提到这方面而已。
阅读全文
摘要:DataAnnotations提供了RequiredAttribute进行null或Empty校验、StringLengthAttribute进行字符串长度校验,很奇怪怎么不提供一个StringLengthRangeAttribute校验。比如我们在校验输入时,可能需要密码在6-20这个范围内,这时候我们自己扩展一个ValidationAttribute就行了,很简单:[代码]使用举例:[代码]后记:.Net 4下,System.ComponentModel.DataAnnotations命名空间下的StringLengthAttribute增加了MinimumLength属性可供设置最小字符
阅读全文
摘要:基于ASP.NET MVC 2.0的比较验证
阅读全文
摘要:本文没什么技术含量,正适合放在目前状况下的博客园首页。首先定义一条路由规则: [代码] 以前生成链接是这么做的: [代码] 现在改为这样了: [代码] 首先生成一个链接地址: a href="/Details/0"{1}/a 将“0”替换成“{0}”后就成了这样: a href="/Details/{0}"{1}/a 然后我们根据这个格式去生成新的链接地址即可。 简洁起见,以上代码没进行Model空校验、Url编码处理、Html编码处理、列表格式化等。 另,老赵以前专门做过关于Url生成性能的分析。
阅读全文
摘要:(写完本文后,我去下载了ASP.NET MVC 3 RC,发现它对Filter的可控性方面进行了某些增强——不仅仅是针对全局Filter的 GlobalFilterCollection——所以在此特别说明一下本文目前主要针对的是ASP.NET MVC 2.0 RTM,当然大部分都适用于3.0)以AuthorizeAttribute这个Filter举例,一个Controller有若干个Action,包括登录的Action(如Login)。这时我们有两种方式来实现:1、重新实现一个IAuthorizationFilter,在里面判断如果是Login这个Action,就不进行验证。然后将这个Filt
阅读全文