【问题标题】:Developing enterprise level application using LINQ使用 LINQ 开发企业级应用程序
【发布时间】:2010-03-07 18:12:23
【问题描述】:
使用 LINQ to SQL 可以加快应用程序开发速度,但会分解应用程序中的逻辑层。数据访问层和业务对象层几乎没有身份,它们位于同一个 dll 中。有没有人知道如何使用 LINQ to SQL 开发企业级应用程序。我们如何清晰地分离业务对象和 LINQ 生成的实体?他们将如何通信,数据将如何在我们的业务对象和 LINQ 实体之间传输。对此的任何文章或任何建议将不胜感激。谢谢。
【问题讨论】:
标签:
linq-to-sql
architecture
linq-to-entities
【解决方案1】:
我们正在将 L2S 用于管理我们工厂运营和相关应用程序的下一代软件。这是针对 $2.5B 薄膜太阳能公司的。我们已经构建了一个明确定义的基于 L2S 的 n 层应用框架。
我们还创建了自己的代码生成器来生成应用程序实体集、L2S 实体集、业务逻辑层和数据访问层。 L2S 实体集仅供后端使用。应用程序实体(没有内置 L2S 管道)用于从应用程序到服务器来回传输数据。我们使用 WCF 进行应用程序层到服务器层的通信。
我们的应用程序使用 WCF 调用后端业务逻辑层进行数据处理。业务逻辑层调用我们的数据访问层以进行基于 Linq 的低级数据访问。我们的应用程序实体传入和传出我们的后端。在后端,我们有非常高效的映射,将应用实体映射到每个 L2S 实体。
对我们来说效果很好。
兰迪