Asp.net Mvc Codeplex Preview 5 第二篇 Controller&Filter的新特性

简介:     下载:http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=16775 上篇: Asp.net Mvc Codeplex Preview 5 第一篇 Helper的新特性     BindingHelperExtensions.

 

 

下载:http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=16775

上篇: Asp.net Mvc Codeplex Preview 5 第一篇 Helper的新特性

 

 

BindingHelperExtensions.UpdateFrom改为UpdateModel

使用方法(缺点:如果表单里存在MyModel里不存在的字段就会报错)
var x 
=   new  MyModel();
this .TryUpdateModel(x, Request.Form.AllKeys);

或(缺点:一个一个写太麻烦)
var x 
=   new  MyModel();
this .TryUpdateModel(x,  new [] { " IDX " " Name " });

优点:如果你有定义HtmlHelper.ValidationMessage那么它将会自动为你判空,详见上篇文章

 当然,你也可以通过this.TryUpdateModel(x, new[] {"IDX""Name"},"Account");这种方式来获取不同的Model.

上述 TryUpdateModel返回是否绑定成功的bool值,如果确定无误,可使用 UpdateModel

Action提供了数组参数

View:

   <% using (Html.Form( " home " " save " , FormMethod.Post)) { %>
     
<% = Html.CheckBox( " like " %>
     
<% = Html.CheckBox( " like " %>
     
<% = Html.CheckBox( " like " %>
     
<% = Html.CheckBox( " like " %>
     
<% = Html.SubmitButton()  %>
     
<% } %>

Action:

      public  ActionResult Save( string [] like)
         {
              ViewData[
" Message " =   string .Join( "" , like);
              
return  View( " Index " );
         }


这样是可以取到like的值的

 

AcceptVerbs Filter

这个Filter可以让我们定义Action的访问方式


[AcceptVerbs( " Post " )]
public  ActionResult Save()//只有Post才能访问

[AcceptVerbs(
" Post " , " GET " )]//Post或Get都能访问,但其它方式不能访问
public  ActionResult Save()

 

 

ActionName Filter

为一个方法定义它的ActionName

如HomeController中定义


         [ActionName( " MyAction " )]
         
public  ActionResult Save()
         {
              
return  View( " Index " );
         }

 

则/home/save不能访问

一定要/home/myaction才可以访问


 

目录
打赏
0
0
0
0
1
分享
相关文章
.NET技术的强大功能:.NET技术的基础特性、在现代开发中的应用、以及它如何助力未来的软件开发。
.NET技术是软件开发领域的核心支柱,以其强大功能、灵活性及安全性广受认可。本文分三部分解析:基础特性如多语言支持、统一运行时环境;现代应用如企业级与Web开发、移动应用、云服务及游戏开发;以及未来趋势如性能优化、容器化、AI集成等,展望.NET在不断变化的技术环境中持续发展与创新。
176 4
.NET 技术凭借其独特的优势和特性,为开发者们提供了一种高效、可靠且富有创造力的开发体验
本文深入探讨了.NET技术的独特优势及其在多个领域的应用,包括企业级应用、Web应用、桌面应用、移动应用和游戏开发。通过强大的工具集、高效的代码管理、跨平台支持及稳定的性能,.NET为开发者提供了高效、可靠的开发体验,并面对技术更新和竞争压力,不断创新发展。
148 7
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位
.NET 技术凭借高效开发环境、强大框架支持及跨平台特性,在软件开发中占据重要地位。从企业应用到电子商务,再到移动开发,.NET 均展现出卓越性能,助力开发者提升效率与项目质量,推动行业持续发展。
63 4
|
5月前
|
C#语言新特性深度剖析:提升你的.NET开发效率
【10月更文挑战第15天】C#语言凭借其强大的功能和易用性深受开发者喜爱。随着.NET平台的演进,C#不断引入新特性,如C# 7.0的模式匹配和C# 8.0的异步流,显著提升了开发效率和代码可维护性。本文将深入探讨这些新特性,助力开发者在.NET开发中更高效地利用它们。
61 1
.Net特性Attribute的高级使用
【10月更文挑战第14天】在.NET中,特性(Attribute)是一种强大的机制,用于在代码中添加元数据。本文介绍了特性的高级用法,包括自定义特性、通过反射读取特性、条件编译与特性结合、多个特性应用以及特性继承。通过示例展示了如何创建自定义特性类、应用自定义特性,并通过反射获取特性信息。此外,还介绍了如何利用条件编译符号实现不同版本的代码控制,以及如何在一个代码元素上应用多个特性。最后,探讨了如何通过`AttributeUsage`控制特性的继承行为。
114 1
.NET 8新特性:使用ConfigurePrimaryHttpMessageHandler定制HTTP请求
在.NET 8中,通过`ConfigurePrimaryHttpMessageHandler`方法,开发者能更精细地控制HTTP请求,这对于构建高效爬虫尤为重要。此特性支持定制代理IP、管理Cookie与User-Agent,结合多线程技术,有效应对网络限制及提高数据采集效率。示例代码展示了如何设置代理服务器、模拟用户行为及并发请求,从而在遵守网站规则的同时,实现快速稳定的数据抓取。
119 0
.NET 8新特性:使用ConfigurePrimaryHttpMessageHandler定制HTTP请求
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
87 0
|
7月前
|
闲话 .NET(6):.NET Core 各个版本的特性
闲话 .NET(6):.NET Core 各个版本的特性
178 0
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
252 0

热门文章

最新文章

相关实验场景

更多
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等