服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

微软最新asp.net mvc框架beta版技术细节 (1)

【赛迪网-it技术报道】近日,微软发布了最新的asp.net mvc框架的beta版(点击这里下载)。你还可以访问 www.asp.net/mvc, 浏览一下教程, 快速上手, 和录像等以了解技术细节。

  asp.net mvc beta版可用于.net 3.5和.net 3.5 sp1下,同时支持vs 2008 和 visual web developer 2008 express sp1版本(该版本是免费的,现在还支持类库和web应用项目类型)。

  今天的asp.net mvc beta版本带有一个明确的“上线(go-live)”许可,允许你将其部署于生产环境中。以前的预览版本也允许上线部署,但其做法只是没有拒绝部署的许可,而不是明确地允准许可(此乃很容易混淆之处),今天的版本在这一点上在许可中说得很清楚。

  该beta版本的特性已经非常接近于正式版v1的完整特性,虽然还会在最终的v1版发布之前加入若干个特性(包括几个vs工具增强等)。但开发团队决定将这个版本称为“beta”版本,是因为其品质和测试要比以前的预览版本高(其中包含了许多缺陷修补和性能调校方面的工作),他们感觉,其中的核心功能现在已经“烧制”得足够好,从这个版本到最终版不会有重大变动了。

  对该版本中一些新的特性和与早先的“第五个预览版”之间的变动的简短概述:

  • visual studio中新的“添加视图”菜单项
  • 新的 \scripts目录和jquery支持
  • 对复杂类型的内置模型绑定器支持
  • 重构的模型绑定器设施
  • 强类型的updatemodel和tryupdatemodel白名单过滤
  • 改进的updatemodel和tryupdatemodel场景的单元测试
  • 强类型的[acceptverbs]特性
  • 更好的验证错误信息
  • html辅助方法的清理和重构
  • silverlight / asp.net mvc 项目集成
  • asp.net mvc futures 程序集
  • \bin 和 gac 程序集部署

  我还计划在将来的几个星期内发表几个全程(end-to-end)教程,给尚未研究过asp.net mvc的人,以及想从头学起,想知道如何起步的人更深入地解释asp.net mvc的概念。

visual studio中新的“添加视图”菜单项

  在以前的asp.net mvc预览版中,你需要通过vs中的项目->添加新项对话框手工地添加视图,创建好一切,然后将它们连接起来要求若干个手工步骤(确认目录/文件结构是对的,进入后台文件指定强类型的viewdata模型类型等等)。

  今天的beta版本简化了这些步骤,你现在只要在源码编辑器中将光标移进一个controller action方法之内,然后右击,选择新的“添加视图(add view)”上下文菜单项(或者你也可以键入ctrl-m ctrl-v快捷键组合来启动,手不必离开键盘):

  这会调出一个新的“添加视图”对话框,允许你指定你想要创建的视图名称,其母版页,以及可选地,它的强类型viewdata“模型”类型:

   visual studio会根据你的光标所在的action方法自动地填充视图名称(然后你想要的话,也可以改动)。例如,如果在选择“添加视图”时,我们的光标是在“edit” action方法中的话,它会在视图名称对话框中填“edit",而不是“browse”。

  视图的强类型viewdata“模型”可从可编辑的combobox中选择,该combobox列出了mvc项目中所有的类(或者引用的类):

  然后,你可以从列表中选一类型,或在combobox中手工输入一个类型。或者你也可以先从列表中挑一初始类型,然后做些改动。例如,我们可以从列表中选择“product”类,然后使用combobox的编辑支持,将其改成ienumerable,意即一个产品序列:

  在点击“添加”按钮后,visual studio会自动地生成合适的视图目录结构,往我们的项目中加一个适当名称和基类的强类型视图。例如,我按上面的步骤做的话,它会为我生成一个新的\views\products目录(因为我的控制器类名是productscontroller),在其中加一个强类型的browse.aspx视图(该视图从viewpage>继承而来,因为这是我们在上面对话框中指定的模型类型):

  新生成的视图会在ide中自动打开,然后我们可以使用完整的intellisense实现视图(小技巧:确认在创建视图后立刻编译一下,以确保你的强类型模型会在intellisense中出现):

  在运行时,我们就能得到一个用asp.net mvc建造的seo优化的产品浏览网页:

  注: 在这个beta版本中通过“添加视图”生成的视图文件是空白的,在最终版中,我们希望在“添加视图”对话框中加一些“scaffolding(脚手架)”功能,允许你指定你想要根据“添加视图”对话框中指定的强类型模型来自动生成html列表/细节视图或者编辑/插入表单(然后你可以从这起始的html视图开始,改成你想要的东西)。在将来,我们还将把asp.net动态数据与mvc集成,来支持更丰富的“scaffolding”选项。

查看原文请点击...