Plan for search engine optimization and accessibility

  • 使用analytical tools分析HTML,如SEO toolkit from MS,  Webmaster Tools from Google, W3C Markup Validation Service
  • 使用Browser插件观察结构,如IE的F12可打开developer Toolbar。
  • WAI-ARIA for accessibility

Plan and implement globalization and localization

  • planning a localization strategy
  1. 从HTTP头的Accept-Language取得browser的preferred language,但要设置<system.web>的<globalization culture="auto" uiculture="auto" enableclientbasedculture="true" />
  • 使用resource到UI
  1. 使用resx file
  2. 在client端使用globalize.js
  • client端主动设置culture
  • 使用satellite assemblies,使用al.exe生成satellite dlls.

Design and implement MVC controllers and actions

  • attributes和filters
  1. RequireHttpsAttribute
  2. ValidateAntiForgeryTokenAttribute
  3. ValidateInputAttribute
  4. AuthorizeAttribute
  5. ChildActionOnlyAction
  6. ActionFilterAttribute
  • OnActionExecuting
  • OnActionExecuted
  • OnResultExecuting
  • OnResultExecuted
  • 使用attributes
  1. on the action iteslf
  2. on controller level
  3. through global filters,如filters.Add(new RequireHttpsAttribute());
  • 实现action的行为
  • 实现action的result
  1. ContentResult
  2. EmptyResult
  3. FileResult
  4. JavaScriptResult
  5. JsonResult
  6. PartialViewResult
  7. RedirectResult
  8. RedirectToRouteResult
  9. ViewResult
  • 实现model binding
  1. DefaultModelBinder
  2. LinqBinaryModelBinder
  3. ModelBinderAttribute
  4. ModelBinderDictionary

weakly-typed style,如@Html.TextBox("login.UserName")

使用Bind attribute,

如public ActionResult Login([Bind(Prefix="login")]LoginUser user)

public ActionResult Save([Bind(Exclude="Salary")]Employee emp)

使用value provider取model

    • FormsValueProvider
    • QueryStringProvider
    • HttpFileCollectionValueProvider
    • RouteDataValueProvider

Design and implement routes

  • 使用MapRoute定义一个route
  • 使用route的限制,如 new {id=@"\d+"}
  • ignore一个route
  • Adding custom route parameters
  • 使用area

Control application behavior by using MVC extensibility points

  • 使用filter和controller factory
  1. Authorization
  2. Action
  3. Result
  4. Exception
  • 通过action result控制,override ExecuteResult() of System.Web.Mvc.ActionResult
  • 通过view engine
  • 通过model binder
  • 通过route handler

最新文章

  1. VS2010开发工具使用技巧&lt;之简单讲解&gt;
  2. .htaccess添加Header set Cache-Control报错500
  3. python走起之第五话
  4. 关于PF_RING/Intel 82599/透明VPN的一些事
  5. CSS 分组 和 嵌套 选择器
  6. Android:源码环境编译自定义的APP到ROM(System Image)中
  7. 页面加载完毕执行多个JS函数
  8. iOS 历史浏览网页的定向跳转
  9. TensorFlow源码安装
  10. Djanggo ORM操作
  11. DOM Access and Manipulation JS 操纵DOM
  12. JS获取开始、结束时间
  13. angularJS1笔记-(12)-自定义指令(compile/link)
  14. zabbix 触发器描述列表count
  15. C/C++——C语言库函数大全
  16. 九度oj题目1555:重复子串
  17. 【3】.net MVC 使用IPrincipal进行Form登录即权限验证
  18. Bootstrap-学习系列
  19. Oracle数据库不能创建表空间及表中文乱码问题
  20. [转]-webkit-overflow-scrolling:touch的应用

热门文章

  1. 【转】 Easy RadControl 之 RadGridView(Silverlight)
  2. 学习中的错误——ubuntu 14.04 LTS 启动eclipse报错
  3. JS 笔记(一)
  4. c/c++面试题(8)memcopy/memmove/atoi/itoa
  5. Which ports are considered unsafe on Chrome
  6. Fiddler-3 配置Fiddler监听iphone的http/https请求
  7. 一些Layout的坑。坑死我自己了
  8. iOS 上拉下拉刷新简单实现代码
  9. 从UWP到SWIFT-页面间反向传值
  10. WP8 MediaElement 实现循环播放