Asp.net 使用LINQ的解决方案结构

Asp.net 使用LINQ的解决方案结构,asp.net,linq-to-sql,Asp.net,Linq To Sql,我的基本ASP.NET结构始终是3个项目 DAL=数据访问层-处理数据库 业务逻辑层-处理所有操作和功能 表示层-向网站显示数据 我是否需要更改我的基本结构,因为我想使用LINQ到sql进行开发 使用LINQ to sql开发的最佳结构是什么?对于新项目,我将从这个结构开始,并根据需要调整它: C#POCO域对象(又称“业务”对象) 实体框架4.1代码优先 WCF网络服务 ASP.NETMVC3使用Razor,或者WebForms,如果您有非常令人信服的理由这样做的话 您的web应用程序

我的基本ASP.NET结构始终是3个项目

  • DAL=数据访问层-处理数据库
  • 业务逻辑层-处理所有操作和功能
  • 表示层-向网站显示数据
我是否需要更改我的基本结构,因为我想使用LINQ到sql进行开发


使用LINQ to sql开发的最佳结构是什么?

对于新项目,我将从这个结构开始,并根据需要调整它:

  • C#POCO域对象(又称“业务”对象)
  • 实体框架4.1代码优先
  • WCF网络服务
  • ASP.NETMVC3使用Razor,或者WebForms,如果您有非常令人信服的理由这样做的话

您的web应用程序应连接到WCF服务以进行数据访问。

否。结构可以保持不变。但我会改用实体框架,这是微软在不久的将来推出的。

LINQ to SQL是一个非常简单的ORM,是数据库顶部的一个薄层。

因此,如果您决定在项目中使用它,请将其视为DAL。

无需更改项目的结构。DAL基本上成为LinqToSql模型、类等的场所。
与其他建议一样,您应该考虑实体框架(LIQOTO实体),而不是在开发LIQOTQL中不再考虑。 您可以阅读实体框架。

使用POCO

如果您真的打算使用LINQtoSQL,请使用它来填充POCO。见鬼,使用你想要的任何东西,但将它们作为POCO发送回你的业务逻辑和UI。如前所述,L2S不再受到微软的“祝福”,这就是使用POCOs的美妙之处。让我们面对现实吧,英孚不被“祝福”和下一件大事到来只是时间问题


如果您使用POCO,唯一需要更改的是DAL以及如何获取数据来创建POCO。其他一切都将保持不变。

您是指LINQ本身,还是LINQ to SQL,LINQ to Entities?您是指
LinQToSQL
?我不会在新项目中使用LINQ to SQL。因为它不再是Microsoft-Strategic了。LINQ to SQL和EF特别适合这种结构,因为
IQueryable
链很容易维护。如果不是真的需要,我不会使用WCF,因为它更复杂。@gsharp:它过去设置起来非常困难,但在最近的版本中,情况并非如此。根据我的经验,大多数项目最终都会在某个时候需要WCF,所以我建议提前计划。正如我所说的-根据您的具体需求调整此大纲。您是否有使用EntityFramework5创建此结构的经验?我无法将C#POCO域对象与实体框架所在的位置分开。。。