`
RednaxelaFX
  • 浏览: 3067651 次
  • 性别: Icon_minigender_1
  • 来自: 海外
社区版块
存档分类
最新评论

看了关于VS2008/.NET 3.5 SP1的录像,做笔记

阅读更多
录像地址:
Channel 9: Not your grandmother's service pack!

这是在纽约的.NET开发者社区做的一个演示的录像。原本是想看看一些我平时更可能会用到的特性的介绍,像是VS2008的squiggles之类的,不过录像内容主要是ASP.NET的一个演示,我平时可不作ASP.NET的开发,本来也不太关心ASP.NET相关的信息……嘛,总之看了也没坏。顺便做点笔记好了。

演示中创建的项目类型是Dynamic Data Entities Web Application。从我已有的知识,这里既涉及到两个新特性:Dynamic Data与Entity Framework。

Dynamic Data(下面简称DD)主要用于快速搭建数据驱动的网站,提供带有CRUD基础功能的脚手架(scaffolding),并且允许高度的可定制性。看了这个演示,我的第一感觉跟以前第一次看Ruby on Rails的演示一样惊讶和兴奋。它们在脚手架的概念上非常相似,初始状态下做出来的网页看起来也十分相似;当然,DD生成的默认网页用到了ASP.NET AJAX的控件。Ruby是一种十分动态的语言,而Rails也充分的利用了这一点来提供网站的基本功能。DD背后则是C#(或者VB.NET,或其它CLS兼容的.NET语言),没有Ruby那么动态,为脚手架提供metadata的方式也就不一样。RoR里的许多方法都是通过metaprogramming来完成的,提供一些Symbol就完事了。DD/C#则是通过annotation来提供metadata;DD可以读取metadata来判断为哪些数据生成怎样的页面;包括数据验证(validation)都可以写在metadata里,这样就不必在UI里再写一次model里本来就应该有的数据验证规则了。而且,这些metadata还可以被DD生成的页面以外的其它前端所使用,下面会提到。除此以外,DD还可以使用ASP.NET的另一个新功能,新的Routing Engine,将参数映射到URI上,这样就可以用更加友好的URI来表示所提供的服务,而不必总是在一个问号后面跟一长串的参数。这在以数据为中心的,特别是数据富有层次的系统中应该说是特别方便吧。
一开始,DD是用于LINQ-to-SQL的后端的。而在这个演示里充当后端的则是Entity Framework的ASP.NET Entity Data Model。下面看看Entity Framework是什么。

其实最近关心ASP.NET的人不可能没听说过Entity Framework(下面简称EF)。与ASP.NET MVC一起,它们是现在ASP,NET的热门话题。EF为以处理数据为主的系统提供了比数据库表更高层次的抽象,在框架内提供数据缓存等共通任务的实现,以简化构建这种系统的过程。不过EF到底是不是一个good idea还需要时间的验证。6月份有个轰动的时间,ADO .NET Entity Framework Vote of No Confidence,可以看到一些有经验的开发者对EF目前的状况持有忧虑,认为它犯了早期EJB一样的错误。嗯,这方面我就不太清楚了。之前做过的Java EE的东西也都没用EJB,只有课程作业里用过老的EJB。

演示的最后还展示了一下DD中的数据模型在ADO.NET Data Service中的使用。DD所使用的数据模型里有许多annotation,而这些annotation同样可以被Data Service读取并使用,生成REST风格的数据服务,发送出ATOM格式包装的XML数据。同样也可以通过新的Routing Engine来提供友好的URI,使得在ASP.NET上实现REST风格的服务更加轻松。

毕竟我对ASP.NET的新进展并不太熟悉,用"microsoft asp.net dynamic data"的关键词搜了一下,记下下面几个链接:

Scott Guthrie: New ASP.NET Dynamic Data Support
RedmondDeveloper:  ASP.NET on Rails, Finally
InfoQ: Scaffolding in ASP.NET: Dynamic Data Support
(上一链接的中文版)

根据InfoQ的那篇报道对David Ebbo的引用,利用DD来快速创建一个ASP.NET应用的步骤是:
引用
  • 定义你的模型:

  • 这一步不是特别针对Dynamic Data的,但这是一切的起点。你有一个数据库,就需要为它创建一个模型,现在,这一步可以由LINQ to SQL来完成,不久后LINQ to ENtities也可以完成同样的工作。
  • 测试应用的支架版本:

  • 无需额外的工作量,Dynamic Data就可以让你的支架版本的Web应用运行在你的数据方案之上。尽管这个支架版本只有一些简单“标准”的UI,但是已足够让你对数据表进行所有CRUD的操作(译者注:C即创建-Create,R即读取-Read,U即更新-Update,D即删除-Delete),而且它全面支持数据表关系。以Northwind为例,假设在产品页中可能允许你浏览产品的类别信息,而编辑产品类别名称可能会是在一个下拉框中进行,那么它将显示类别名称,而不是ID。
  • 定制共享页面视图:

  • 接下来就可以修改显示支架视图的页面模板,你所做的改变将会影响到所有与此表相关联的视图。
  • 定制详细的页面:

  • 下一步就是对一些具体的页面进行相应的制定,例如,你可以让一个页面显示产品,而用另一个页面来显示类别。在这一步,你可以按照你自己的步调来创建具体的页面,以保证每个点都能体现应用功能。
  • 注解(annotate)你的模型:

  • 可以通过为你的模型增加属性的方式来为某些字段增加一些额外的信息。例如,你可以为产品的UintInStock字段设置一个取值范围,只允许该字段取值在0至50之间,UI就会自动获取这一信息,并对输入进行校验。这一点的好处就在于你只需要将这些信息保存在你的模型中,而无需让你的页面为此变得杂乱。
  • 创建定制的字段模板:

  • Dynamic Data中的所有字段都是通过字段模板提供的,一般是一些基础的用户控件,你也可以创建定制的模板,这一功能非常强大,例如,在前面的例子中,你可以创建一个字段模板,通过一个限定取值范围的Slider控件来替文本框,页面会自动提取并呈现这一变化,而无需自己去打开aspx文件定制UI。


嗯,把DD跟ASP.NET MVC融合在一起的话,真的就跟RoR十分的相似了。有意思,值得关注一下社区对这几个新技术的反应。
分享到:
评论

相关推荐

    Professional ASP.NET 3.5 SP1 Edition in C# and VB code

    《Professional ASP.NET 3.5 SP1 Edition in C# and VB》是一本由Wrox Press在2009年出版的专业级技术书籍,主要针对ASP.NET 3.5 SP1框架进行深入讲解,并提供了C#和VB两种编程语言的代码示例。这本书是ASP.NET...

    Professional ASP.NET 3.5 SP1 Edition: In C# and VB(part1)

    ASP.NET 3.5 brings the power of Visual Studio® 2008 along with the multitude of language improvements in C# 2008 and Visual Basic® 2008 as well as powerful new technology called LINQ, together with ...

    Professional ASP.NET 3.5 SP1 Edition: In C# and VB

    《Professional ASP.NET 3.5 SP1 Edition: In C# and VB》是一本专为开发者设计的专业级编程书籍,深入探讨了ASP.NET 3.5 SP1(Service Pack 1)框架,涵盖了C#和VB两种编程语言的应用。这本书不仅适合初学者,也对...

    .NET 3.5 SP1 安装失败解决方法

    ### .NET 3.5 SP1 安装失败解决方法 在进行软件开发或系统维护时,经常会遇到.NET Framework 3.5 SP1安装失败的问题。这种情况不仅影响工作效率,还可能导致项目延期。本文将详细介绍一种经过验证的有效解决方案,...

    ASP.NET 3.5 SP1高级编程(第6版)代码

    ASP.NET 3.5 SP1是微软开发的用于构建Web应用程序的框架,是.NET Framework 3.5的一个重要服务包。此版本引入了许多新特性和改进,为开发者提供了更强大的工具和更高的性能。《ASP.NET 3.5 SP1高级编程(第6版)》一...

    Microsoft .NET Framework 3.5 Sp1离线安装 (中文清晰版)

    ### Microsoft .NET Framework 3.5 SP1离线安装详解 #### 一、概述 Microsoft .NET Framework 3.5 SP1(以下简称.NET Framework 3.5 SP1)是.NET Framework 3.5的重要更新版本,它包含了大量性能改进、安全性增强...

    NET-3.5-SP1离线安装包(亲测有效),不好用你打我

    很多办公环境是没有外网的,而Win10又不自带.net 3.5,导致很多运行在.net 2.0\3.0\3.5的程序无法正常运行,所以存在Win10上离线安装.net 3.5的需求。 第一种解决方法如下: ...以上方法是电脑处于有网在线情况。...

    .NET Framework 3.5 SP1完整离线安装包下载地址与制作

    ### .NET Framework 3.5 SP1完整离线安装包详解及制作方法 #### 一、概述 .NET Framework 3.5 SP1是Microsoft推出的一个重要的.NET Framework版本更新,它包含了.NET Framework 2.0 SP2和.NET Framework 3.0 SP2的...

    Microsoft .NET Framework 3.5 SP1 3个语言包

    《深入理解Microsoft .NET Framework 3.5 SP1与Windows 10 64位系统的兼容性》 Microsoft .NET Framework 3.5 SP1(Service Pack 1)是.NET Framework 3.5的重要更新,它包含了从.NET Framework 2.0到3.5的所有功能...

    C#与.NET3.5高级程序设计 随书代码

    《C#与.NET3.5高级程序设计》是一本深入探讨C#编程语言和.NET Framework 3.5平台的专业书籍。随书代码包含了书中讲解的各种技术示例和项目实践,帮助读者更好地理解和应用所学知识。 C#是微软公司推出的面向对象的...

    asp.net 3.5 sp1开发资料

    ### ASP.NET 3.5 SP1开发资料:深入探索CSS滤镜效果 #### CSS滤镜在ASP.NET 3.5 SP1中的应用 在ASP.NET 3.5 SP1的开发过程中,CSS滤镜效果是一种增强网页视觉表现力的重要手段。尽管ASP.NET 3.5 SP1是一个较早的...

    Professional ASP.NET 3.5 SP1 Edition In C# and VB

    Professional ASP.NET 3.5 SP1 Edition In C# and VB.rarProfessional ASP.NET 3.5 SP1 Edition In C# and VB.rar

    .Net 3.5 使用 System.Threading.Task

    .Net 3.5 下使用的 System.Threading.Tasks。 安装完成后,添加引用时只需要在安装目录 C:\Program Files (x86)\Microsoft Reactive Extensions\Redist\DesktopV2 下找到 System.Threading.dll,添加即可

    Professional ASP.NET 3.5 SP1 In C# and VB

    ASP.NET是Microsoft开发的一个用于构建动态Web应用程序的框架,3.5版本在原有的基础上做了很多改进和增强,SP1(Service Pack 1)则提供了更多的更新和优化。 本书首先介绍了ASP.NET的基础知识,包括Web表单、控件...

    ASP.NET 3.5 SP1高级编程(第六版)源码

    ASP.NET 3.5 SP1是微软开发的一款用于构建Web应用程序的框架,它基于.NET Framework 3.5 Service Pack 1。此框架提供了丰富的特性和工具,帮助开发者更高效地开发动态网站、Web服务和富互联网应用。"ASP.NET 3.5 SP1...

    .net3.5 sp1 安装包不好找

    8. **开发工具改进**:Visual Studio 2008 SP1与.NET Framework 3.5 SP1配套,提供了更好的开发环境和调试体验。 在压缩包文件"wcu"中,可能包含了.NET Framework 3.5 SP1的离线安装程序,这对于那些无法连接到...

    win10_64位 .net3.5离线安装包

    win10_64位 .net3.5离线安装包win10_64位 .net3.5离线安装包win10_64位 .net3.5离线安装包

    ServiceModel .net 3.5 sp1更新包

    .NET Framework 3.5 SP1(Service Pack 1)是一个重要的更新,旨在提高.NET Framework 3.0的性能和稳定性,并引入了一些新特性。在这个特定的更新包中,重点在于解决WCF(Windows Communication Foundation)的端口...

    ASP.NET3.5开发大全 (word) 整理好的

    在MVC(Model-View-Controller)模式方面,虽然ASP.NET MVC框架是在ASP.NET 3.5 SP1中发布的,但它是该版本的一个重要补充。MVC模式为Web开发提供了一种清晰的结构,分离了业务逻辑、视图呈现和用户交互,增强了代码...

    asp.net 3.5源码

    9. **MVC模式**:虽然ASP.NET MVC框架在.NET 3.5 SP1中才引入,但源码可能包含了早期的MVC实践,展示如何分离关注点,实现更清晰的代码结构。 10. **Web Forms和控件自定义**:除了内置的控件,开发者还可以创建...

Global site tag (gtag.js) - Google Analytics