技术开发 频道

Castle项目1.0 RC3发布


【IT168技术文档】

  早就期待着的Castle Project 1.0 RC3终于在开发几乎1年后发布了。从Castle Project网站的通告可以看到,新版本给开发人员带来了很多用于为.NET 2.0 Web应用程序而设计的MVC框架的新特性和增强功能。

  InfoQ前不久采访过项目创始人Hamilton Verissimo。这个项目最后的一个版本是2006年11月发布的RC2,由于有1整年没有任何改变,所以现在新版本带来了太多的变化。

  更新的功能包括:

  ActiveRecord

  不需要扩展ARBase就能支持多数据集
  使用新的Castle Validation实现重构验证支持
  InPlaceConfigurationSource.Build()
  添加HqlNamedQuery
  大量的错误修正

  DynamicProxy

  RC3第一次包含DynamicProxy 2(其支持泛型)
  比版本1快很多
  MicroKernel/Windsor

  支持泛型集合
  转而使用DynamicProxy 2
  添加一些小功能到IKernel和IWindsorContainer的add/resolve方法中
  子容器支持得以提升,但是依旧需要一些检查——你可能会在编译的时候得到警告
  添加了一个很简单的计算(Eval)支持,你能进行配置
  DefaultKernel 和 WindsorContainer现在都实现了IServiceProvider
  MonoRail

  添加了缓存(Cache)支持(查看新的Cache属性)
  添加IsPost/IsGet/IsPut/IsHead到Controller
  添加自动窗体验证(Auto Form Validation)
  FormHelper接近完美,依然缺乏多条选择的支持
  支持一次注册多个视图引擎(可以和混合视图引擎说拜拜了)——但是还不够好,在内部还有很多不协调的情况
  添加了少量视图组件
  添加测试控制器、视图组件、向导的支持,而无须使用ASP.NET
  添加了JS生成器支持,及UpdatePage/UpdatePageTag视图组件
  Format支持set操作,例如$Form.Select(”price”, [1..100], “”)是用货币格式来显示选择的元素
  添加PaginationHelper.CreateCustomPage,其是处理分页最优化的方式
  添加DiggStylePagination视图组件,基于Alex Henderson运作
  添加了如下成员到SmartDispatcherController(和验证有关):ValidationSummaryPerInstance : IDictionary、  GetErrorSummary(对象实例) : ErrorSummary、HasValidationError(对象实例) : bool
  添加ViewComponentDetails属性(就像ControllerDetails)
  添加ViewComponentParam属性,它可以告知MonoRail把参数作为属性绑定到你的视图组件上——减少了重复的代码规则
  添加UrlHelper/UrlBuilder概念
  Aspect#

  已经发布

  组件


  添加Castle.Validator
  添加Castle.DictionaryAdapter——对这个特性还有点拿不准
  加强了Binder(这是它的实现的另外一种重写代码)
 
  其他

  创建了using.castleproject.org
  创建了api.castleproject.org
  在Castle.Services.Transaction和微软System.Transactions之间进行了初步集成
  创建了Castle.Core命名空间

0
相关文章