ASP.NET MVC和Spring.NET
开始一个新项目,并希望使用其中一个MVC framworks。 ASP.NET MVC仍在预览中,但Spring.net仍在生产中,并且具有Java的历史。我想知道两者之间的普遍差距。
当前的问题..
主要功能差异是什么?
部署/托管问题呢?
将来的支持?我们是否认为ASP.NET MVC一旦投入生产,Spring.net就会消失。
当前支持?在下一个预览版中,我看到Jeff谈论了一个重大更改。
谢谢!
解决方案
回答
这个问题让我有些困惑。 Spring.Net是可以在ASP.NET MVC中使用的依赖项注入框架。我的回答是根据实际要求做出的。 ASP.NET MVC与在ASP.NET中运行的另一个MVC框架之间的区别。
如果我们担心在生产环境中使用ASP.NET MVC(甚至还不是Beta版),那么我们可能想看看MonoRail作为替代产品。功能上有些差异,但是两者在术语和MVC的实现方式上都非常接近。要了解差异,这里是一个我们可能需要监视的问题。我认为,一旦ASP.NET正式发布,大多数Microsoft商店都会改用它。在仍在开发ASP.NET MVC的情况下,我们将遇到重大更改,而升级到下一个版本时必须进行更改。那与生活在边缘的领土是一致的。我们只需要阅读发行说明,然后再跳至最新版本。
回答
我给人的印象是Spring.NET从未真正起步,或者至少不如Castle Project Monorail那样强大。
据我了解,Spring.NET也脱离了Java Spring的实现,因此,如果我们来自Java,则学习曲线会比预期的陡峭。从Spring.NET的概述中:
The design of Spring.NET is based on the Java version of the Spring Framework, which has shown real-world benefits and is used in thousands of enterprise applications world wide. Spring .NET is not a quick port from the Java version, but rather a 'spiritual port' based on following proven architectural and design patterns in that are not tied to a particular platform.
至于其他问题,主题的广度使它们很难一口气回答,但我希望Phil Haack能够看到并回答这个问题。 :)
回答
是的,Spring.net将企业解决方案添加到了Microsoft的代码库中,Spring将填补关键的缺失空白。
我可以尝试回答有关Spring.net和ASP.net MVC将来支持的问题。显然,当Microsoft使用RTM / Final版本时,Spring将发布新的Milestone版本:
http://forum.springframework.net/showthread.php?p=14031#post14031(Mark是Spring.net负责人和Microsoft MVP)
我听说他们直到那时都不想放弃任何东西,因为他们已经有足够的Microsoft接受Springs的想法而没有得到认可。
当前对Spring.net和控制器依赖注入的支持可以在MVCContrib中找到。