.NET相当于现代Java Web架构

时间:2008-12-03 08:05:59

标签: java .net spring ado.net transactions

几乎每个新的Java-web项目都使用现代MVC框架,如Struts或Spring MVC用于Web层,Spring用于“服务”/业务逻辑层,ORM映射器如Hibernate用于持久性。 .NET中的等价物是什么?

我认为ASP.NET用于Web层和ADO.NET用于持久性,但是它与Spring等效,即用于连接事务和组件等的内容。

我知道Spring.NET,但我对在.NET中构建应用程序的事实上的方式更感兴趣。

6 个答案:

答案 0 :(得分:4)

默认方法是ADO.NET/Linq-to-Sql,ASP.NET和重新发明轮子的自定义服务层。微软有Unity用于自动装配,但我不认为依赖注入在.NET世界中是主流。

但是如果你选择最佳实践,那就是用于UI的ASP.NET MVC,用于连接的任何DI框架(Castle,Unity,Autofac,...),以及用于持久性的NHibernate。

答案 1 :(得分:1)

这样的东西?

http://www.asp.net/mvc/

答案 2 :(得分:1)

在.NET中没有事实上的数据访问方式。

选项包括:

  • ADO.NET DataReaders *
  • ADO.NET DataTables *
  • LINQ to SQL *
  • 的nHibernate
  • ADO.NET实体框架*
  • 键入的数据集*
  • Spring.NET
  • CSLA.Net

注意带有*的那些,这些是微软自己提供的最新产品。而且我已经跳过了那些我不记得怎么拼写的东西。

答案 3 :(得分:0)

ASP.NET MVC +更适合您工作的数据访问。

还有许多其他框架,工具和库可以帮助诸如Castle,Ninject,Nunit,NLog等。

但我相信对你问题的更好回应是“这取决于”。

答案 4 :(得分:0)

实际上,CSLA不提供任何数据访问。数据访问实施由您决定。

答案 5 :(得分:0)

请注意,ASP.NET MVC还不是RTM,但我们多年来一直使用ASP.NET Web表单(自.NET 1.0起)。