Castle发布新版本

简介:

 昨晚群里一位同学说Castle发布了最新版本,上去一看,还真是。不过不是Castle整体发布了新版本,而是它的核心项目,Core,MonoRail,ActiveRecord,Windsor几个项目分别在这个月发布了新的版本.
     关注过Castle的人可能都会觉得Castle更新的也太慢了,MonoRail的一个开发者在这里说明了为什么MonoRail2花费了如此长的时间。我们也大概来看一下,他们大概做了哪些改变:
     1.Core 1.2
         1)Email sender组件集成了进来,并且用System.Net.Mail的MailMessage, Attachment,AttachmentCollection替换了Message, MessageAttachment,MessageAttachmentCollection.
         2)Logging services集成了进来.
         3)发布了四个版本for .NET 2.0, for .NET 3.5, for Silverlight 3.0 and for Mono 2.6
    2. Monorail 2.0
         1)程序化配置可以不采用在Web.Config文件里面,而是直接在Global全局类里面通过程序编码进行配置.

?
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
            public void Configure(IMonoRailConfiguration configuration)
         {
             configuration.ControllersConfig.AddAssembly(Assembly.GetExecutingAssembly());
             configuration.ViewEngineConfig.ViewPathRoot = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Views" );
             configuration.ViewEngineConfig.ViewEngines.Add( new ViewEngineInfo( typeof (AspViewEngine), false ));
             // configue jquery as the validation engine
             configuration.JSGeneratorConfiguration.AddLibrary( "jquery-1.2.1" , typeof (JQueryGenerator))
                 .AddExtension( typeof (CommonJSExtension))                 .ElementGenerator
                 .AddExtension( typeof (JQueryElementGenerator))
                 .Done
                 .BrowserValidatorIs( typeof (JQueryValidator))
                 .SetAsDefault();
             // configure url extensions
             configuration.UrlConfig.UseExtensions = false ;
         }


         2)返回值绑定
            可以直接设置 Action的返回值的格式,下面是设置返回Json格式的返回值:

 

?
5
6
7
8
9
10
11
12
13
         public class State
{
public string Code { get ; set ; }
}
[ return : JSONReturnBinder]
public State[] GetStates()
{
return new [] { new State { Code=“CA” }, new State { Code=“WA” } };
}>


3)新的路由引擎
http://www.castleproject.org/monorail/documentation/trunk/advanced/routing.html
4)RescueController
用来处理在Action中出现异常的.http://www.castleproject.org/monorail/documentation/trunk/usersguide/rescues.html

   3.MicroKernel/Windsor 2.1.1
          1)最大的改变就是支持Silverlight, 发布了两个版本for .NET 3.5 and for Silverlight 3.0
          2)支持配置文件里配置类型的转向:    

?
5
6
7
8
9
       < component  id="hasForwards"  type="Castle.MicroKernel.Tests.ClassComponents.TwoInterfacesImpl, Castle.MicroKernel.Tests"  service="Castle.MicroKernel.Tests.ClassComponents.ICommon, Castle.MicroKernel.Tests">
< forwardedTypes >
< add service="Castle.MicroKernel.Tests.ClassComponents.ICommon2, Castle.MicroKernel.Tests" />
</ forwardedTypes >
</ component >


         3)添加DynamicParameters,添加返回代理,在组件析构时调用.
         4)添加OnCreate,在组件后创建后移除前调用.
         5)添加组件延迟加载. 6)性能优化和bug修复

   4.ActiveRecord 2.1.2
       1)Castle Validator updated to 1.1.1
       2)基于nhibernate进行了相应的更新.
       3)原来AR也集成了NHibernate.Search,NHibernate.Linq等
       ……………………….

  5.扩展开发工具 
       在这里还是介绍一下Castle相关的一些开发工具,虽然现在他们还没有发布新的版本:
        1)ActiveWriter----集成到VS.NET的NHibernate(ActiveRecord)对象可视化设计工具
        2)类似于ROR的Generator
        3)Visual Studio Integration,用来创建项目并且支持NVelocity的智能提示,可以查看这里.
        

      以上列出的新功能并不是包括新版本所有的新功能,只是对官网文档的一些整理。真没想到castle的这些子项目能够更新出新版本,最新版本的可以从这里下载,尤其是MonoRail,能够在Asp.net mvc发布后继承前进,值得支持.以后Castle也可能会只是各个分项目分别更新版本了,发布新版本后,官网的文档也进行了相当的更新,感兴趣的同学可以去官网查看相当的文档以及对应开发者的blog.

作者:孤独侠客似水流年
出处:http://lonely7345.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

分类: .NET

本文转自孤独侠客博客园博客,原文链接:http://www.cnblogs.com/lonely7345/archive/2010/01/31/1660437.html,如需转载请自行联系原作者
目录
相关文章
|
11月前
|
小程序 IDE 开发工具
社区每周丨IDE 3.7.4 Beta 版本上线及基础库更新至 2.8.10(6.5-6.9)
社区每周丨IDE 3.7.4 Beta 版本上线及基础库更新至 2.8.10(6.5-6.9)
117 11
|
11月前
|
小程序 IDE 开发工具
社区每周丨基础库更新至 2.8.8及IDE3.6.3 Beta 版本上线(4.3-4.7)
社区每周丨基础库更新至 2.8.8及IDE3.6.3 Beta 版本上线(4.3-4.7)
102 11
|
弹性计算 安全 应用服务中间件
项目部署及版本发布
项目部署及版本发布
225 0
|
API C# 图形学
Unity 关于低版本是否可以引用高版本构建内容的可行性验证
本篇内容以Unity的一个相对较低的版本(2017.4.40)和一个相对较高的版本(2020.3.33),来验证在低版本中是否可以使用高版本中构建的内容。
358 1
Unity 关于低版本是否可以引用高版本构建内容的可行性验证
|
安全 Devops
发布插件
发布插件
178 0
发布插件
|
druid Java 数据库连接
关于开发中的版本问题的一点小建议
关于开发中的版本问题的一点小建议
322 0
关于开发中的版本问题的一点小建议
|
敏捷开发 Java Maven
使用自动化插件release来管理maven项目的版本发布
使用自动化插件release来管理maven项目的版本发布
使用自动化插件release来管理maven项目的版本发布
新版本坑太多,UI不适配惊呼受不了?快下载回老旧版本的IDEA!
新版本坑太多,UI不适配惊呼受不了?快下载回老旧版本的IDEA!
357 0
新版本坑太多,UI不适配惊呼受不了?快下载回老旧版本的IDEA!
|
PHP
Swoole v4.6.7 版本发布,Bug修复版本
v4.6.7 版本主要是一个 Bug 修复版本,没有向下不兼容改动。
159 0
|
弹性计算 IDE 开发工具
IDE 插件新版本发布,开发效率 “biu” 起来了
近日,Cloud Toolkit正式推出了面向 IntelliJ 和 Eclipse 两个平台的新款插件,本文挑选了其中三个重大特性进行解读,点击文末 “阅读原文”可查看详细的版本说明。 本地应用一键部署到任何机器上 IDE 内置的命令行终端 文件上传到服务器 添加机器到 IntelliJ 或.
6153 0