Monthly Archives: 五月 2011

更多中文博客列表

嗨,我们最近开通了六个新的中文博客。去看看吧。 ScottGu的中文博客:http://blogs.msdn.com/b/scottgu/ Jason Zanders的中文博客:http://blogs.msdn.com/b/jason_zander/ Brian Harry的中文博客:http://blogs.msdn.com/b/brian_harry/ Soma的中文博客: http://blogs.msdn.com/b/soma/ Scott Hanselman的中文博客:http://blogs.msdn.com/b/scott_hanselman/ Beth Massi的中文博客:http://blogs.msdn.com/b/beth_massi/  

Posted in 未分类 | Leave a comment

ASP.NET MVC 3和Razor中的@helper 语法

[原文发表地址]ASP.NET MVC 3 and the @helper syntax within Razor [原文发表时间]Thursday, May 12, 2011 9:37 PM ASP.NET MVC 3支持一项名为“Razor”的新视图引擎选项(除了继续支持/加强现有的.aspx视图引擎外)。当编写一个视图模板时,Razor将所需的字符和击键数减少到最小,并保证一个快速、通畅的编码工作流。 与大部分模板的语法不同,在Razor的帮助下,您不需要中断代码编写,仅仅为了在HTML中标注服务器端代码块的开始和结束。代码分析器足够聪明,它能够从你的代码里推断出是否为服务器端代码。这种更加简洁、富有表现力的语法更加干净,输入也更快速,有趣。 您可以从过去9个月中我的相关博文来更多地了解Razor: . Razor介绍 . Razor中的新 @model 关键字 . Razor布局 . Razor的服务器端注释 . Razor的@: 和 <text> 语法 . Razor的隐式和显式代码碎块 . Razor的布局和板块 今天的博文涵盖了Razor的一项很多人都不知道的功能——利用@helper语法定义可重用的帮助器方法。 简单的 @helper 方法应用场景 Razor中的@helper语法让您能够轻松创建可重用的帮助器方法,此方法可以在您的视图模板中封装输出功能。他们使代码能更好地重用,也使代码更具有可读性。让我们看一个超级简单的应用场景,它展示了@helper语法是怎样被使用的。 在我们定义@helper方法之前的代码 让我们看一个简单的产品列表应用场景。在此场景中,我们列出产品明细并输出产品的价格或是单词“免费!”——如果这个产品不花费任何成本的话: 以上代码非常直截了当,而且Razor的语法使得在HTML里能简单地集成服务器端C#代码。 然而,一个有点混乱的地方是价格的if/else逻辑。我们可能在站点的其他位置输出价格(或者在同一页面上),而复制以上逻辑很容易出错且难以维护。类似的应用场景是使用@helper语法提取和重构成为帮助器方法的首选考虑。 使用@helper语法重构以上样例 让我们提取价格输出逻辑,并将其封装在一个我们将命名为“DisplayPrice”的帮助器方法内。我们可以通过重写以下代码样例来实现此操作: 我们已经使用上述@helper语法来定义名为“DisplayPrice”的可重用帮助器方法。就像标准C#/VB方法一样,它可以包含任意数量的参数(您也可以定义参数为空或可选参数)。不过,与标准C#/VB方法不同的是,@helper方法可以同时包含内容和代码并支持其中的完整Razor语法——这使得定义和封装呈现/格式化帮助器方法变得非常简单。 您可以像调用一个标准的C#或VB方法一样,调用@helper方法: 当调用该方法时,Visual Studio会提供智能感知代码:   [...]

Posted in 未分类 | Leave a comment

实体框架 4.1 RC 版(包含实体框架代码优先)

[原文发表地址]RC of Entity Framework 4.1 (which includes EF Code First) [原文发表时间] March 19, 2011 11:32 PM 上周数据组发布了实体框架(EF) 4.1的候选发布版(RC)。您可以从这里获知更多并下载。 EF 4.1包含我之前写过几篇相关博文的新的“EF代码优先”选项。 EF代码优先为处理数据提供了一个十分优美而干净的方式,让你可以不需要设计器或XML映射文件就能实现。下面是我以前写过的关于它的一些教程的链接: · 用实体框架4.X实现代码优先开发 · 实体框架代码优先:定制数据库模式映射 · 基于现有数据库使用实体框架代码优先 上面所写的教程是针对实体框架代码优先的CTP4版本(所以有些API可能有一些不一样)——但是提到的概念和场景在RC中同样适用。 即时生效授权 上周的EF 4.1 RC的发布自带一个“即时生效”授权,让你能在生产环境中使用它。EF 4.1的最终发布版将于接下来的4个星期内发布, 与RC发布版的API将100% 兼容。 RC中的改进 RC包含一些改进和增强。EF团队发表了一篇RC更改总结的博文。Scott Hanselman还发表了一个不错的针对这个版本对数据团队的采访的视频。 上周的RC中引入的一个我最喜欢的改进是它对中等信任的支持。 这让你可以在低成本ASP.NET共享宿主网络环境中使用EF 4.1(和代码优先)——无需宿主安装任何别的东西。 EF 4.1现在不但支持代码优先场景的验证,而且支持模型优先和数据库优先工作流的验证。 从之前版本升级 相对先前的CTP版本,RC的确包含少数API的调整。请阅读发布相关的注意事项获取详细更改列表。 John Papa还发表了一篇非常好的升级到EF 4.1 RC的博文,描述了将他之前用CTP5发布版编写的一个大型项目升级到EF 4.1的步骤。 升级工作非常简单直接明了——请参考他整理的步骤来快速升级您自己的项目。 重命名NuGet包 数据组在CTP 5和RC版本发布间做的一个更改是将NuGet包从“EFCodeFirst”重命名为“EntityFramework”。因为EF 4.1发布版现在包含了代码优先之外的几项补充,所以他们决定做出这个更改。 [...]

Posted in 未分类 | Leave a comment

Visual Studio 2010 SP1

[原文发表地址] Visual Studio 2010 SP1 [原文发表时间] March 15, 2011 12:14 PM 上周我们发布了Visual Studio 2010 Service Pack1和Visual Studio Express Tools。 除修复缺陷和提高性能之外,SP1还包含一些功能的增强,包括改进的本地帮助支持,对64位应用程序和sharepoint的IntelliTrace支持,内置的Silverlight 4工具支持,针对.NET 3.5的单元测试支持,针对Silverlight的新的性能向导,对Web项目的IIS Express和SQL CE工具支持,为ASP.NET所作的HTML5 智能感知等等。 TFS 2010 SP1与新的TFS Project Server集成包和负载测试功能包一起在上周发布。 关于TFS更新,Brian Harry有一篇比较好的博文发表在这里。 VS 2010 SP1 下载 请点击这里下载和安装针对所有版本的Visual Studio(包括Express版本)的SP1。 该安装包检查你已经在机器上安装的产品,只下载必需的升级包来使其升级到SP1。下载和升级所需的时间最终决定于所安装的产品。 Jon Galloway有一篇关于通过卸载没用的组件来加速SP1安装的技巧的博文。 Web平台安装程序包 除了VS2010 SP1核心安装程序之外,我们还包括两个能自动安装SP1和额外Web组件的Web 平台安装程序(WebPI)包: • Visual Studio SP1 WebPI 包 • Visual Web Developer [...]

Posted in 未分类 | Leave a comment