从Monorail到ASP.Net MVC

时间:2020-03-05 18:42:23  来源:igfitidea点击:

上一次我使用非凡的.Net / C应用程序时,我使用了Castle Monorail,并且总体上享受了这种体验。 .Net MVC的早期访问/预览版本尚不可用。现在,许多"微软商店"将发现"官方"解决方案更具吸引力。有没有人从Monorail转到.Net MVC。

我们是如何找到开关的?
目前最大的区别是什么?

解决方案

回答

虽然我还没有进行切换,但是我已经在两个平台上进行了开发,并且一直在进行一些切换前的分析。

看起来最大的不同是视图引擎。我们的Monorail东西使用Brail视图引擎,而asp.net mvc(带有股票)带有Web表单(例如视图引擎)。但是,MvcContrib中还有其他视图引擎可以在此方面提供帮助。

另外,ViewComponents和视图"助手"似乎在两个框架上的处理方式也大不相同。

回答

我已经做出了切换,因为我们指出这将是Microsoft商店的首选方式。切换非常简单,正如Mike指出的那样,它是默认使用webform视图引擎附带的,但是就像Mike所说的那样,我们仍然可以利用MvcContrib项目在brail和nvelocity中编写的视图。 ASP.NET MVC不会将我们与直接的ViewEngine绑定在一起,我们可以使用所需的任何ViewEngine。我不一定认为这是有区别的。

我发现的最大区别是对控制器和视图进行了分组。在MonoRail中,我们可以使用ControllerDetails属性轻松完成此操作,我可以通过编写自己的代码轻松解决此限制,但希望内置此功能。我通过创建自己的ViewLocator并创建了ActionFilterAttribute来做到这一点。

回答

ASP.NET MVC团队仍在v1.0之前进行更改,因此现在是提供反馈的好时机。

另外,请注意,CodePlex上发布的频率更高,而www.asp.net上的主页仍链接到Preview 3.

回答

我是单轨用户,到目前为止,由于ActiveRecord ARSmartDispatchController内置的便利性,我仍然对MonoRail + ActiveRecord感到更自在。但是必须要说的是,到目前为止,MonoRail的文档基础还不完善(我应该被认为是社区参与者中的一员,他们对编写文档的帮助不足)

正如我在此处看到的评论所示,ASP.NET MVC使用WebForm视图引擎。我认为MonoRail也有此问题,但被指责是相当成问题的,所以我想知道ASP.NET MVC WebForm的体验如何,我们可以按原样使用Web表单组件,还是必须基本上放弃其中的大多数?并坚持使用更多的模板样式方法(例如<%=或者<%?

回答

幸运的是,我不适合需要使用Microsoft提供的产品的组织。因此,我可能不会直接回答问题,但是在使用MonoRail方面,我喜欢框架的每个部分,尽管缺少文档,但是测试套件可以指导我进行操作。

简而言之,尽管它紧密匹配(每个人都有自己的约定),但我不想花时间学习新框架,但是ASP.NET MVC仍然缺少一些我已经熟悉的功能,例如Dale Ragon ControllerDetail,ActiveRecord和很快。