ASP.NETMVC3RC的一些新特性 (2010.11.9发布版)
2010-11-27 21:02 撞破南墙 阅读(2620) 评论(9) 编辑 收藏 举报1控制Controller的SESSION
[ControllerSessionState(SessionStateBehavior.Disabled)]
//禁用SESSION
public class CoolController : Controller {
public ActionResult Index() {
object o = Session["Key"]; // 触发异常
}
}
[ControllerSessionState(SessionStateBehavior.ReadOnly)]
public class CoolController : Controller {
public ActionResult Index() {
Session["Key"] = "value"; // SESSION属于只读
}
}
2新的验证属性
2.1比较 Compare
public class User {
[Required]
public string Password { get; set; }
[Required, Compare("Password")]
public string ComparePassword { get; set; }
}
2.2 控制客户端属性
UserName 属性被赋予UserNameAvailable,当username属于被编辑页面的时候,客户端验证将调用UserNameAvailable 方法
public class User {
[Remote("UserNameAvailable", "Users")]
public string UserName { get; set; }
}
The following example shows the corresponding controller.
public class UsersController {
public bool UserNameAvailable(string username) {
return !MyRepository.UserNameExists(username);
}
}
2.3LabelFor和LabelForModel的新的重载函数
@Html.LabelFor(m => m.PropertyName, "Label Text");
@Html.LabelForModel("Label Text");
3子action可以使用缓存
当前时间: @DateTime.Now
被缓存时候的事件: @Html.Action("GetDate")
The GetDate action is annotated with the OutputCacheAttribute:
[OutputCache(Duration = 100, VaryByParam = "none")]
public string GetDate() {
return DateTime.Now.ToString();
}
4"Add View" 的对话框变干净了。
不会跟以前一样把整个.NET FRAMEWORK 的类 都包含进去。
5 更小粒度的验证Granular Request Validation
跳过验证。
这次是粒度到了某个属性
public class BlogPostViewModel {
[SkipRequestValidation]
public string Description {get; set;}
}
之前的版本的粒度是整个函数
[HttpPost]
[ValidateInput(false)]
public ActionResult Edit(BlogPostViewModel post) {
// Save the post in the database
作者:撞破南墙
出处:http://www.cnblogs.com/facingwaller/
关于作者:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· Vite CVE-2025-30208 安全漏洞
· 《HelloGitHub》第 108 期
· MQ 如何保证数据一致性?
· 一个基于 .NET 开源免费的异地组网和内网穿透工具