用于数据访问层的一些常用策略和/或框架是什么?

时间:2010-10-27 19:42:13

标签: database architecture

用于数据访问的一些常用策略是什么?

可以将LINQ称为策略吗?

2 个答案:

答案 0 :(得分:1)

Strategy

  

战略,一个军事起源的词,是指为实现特定目标而制定的行动计划。

现在我们必须确定目标。

目标可以是从应用程序统一访问数据库。如果是这样,可以有几种策略。

  • 手动读取/写入数据库中的数据。选项包括内联SQL或使用存储过程。

  • 使用可以将自己保存到数据库或从数据库中实现自身的应用程序级对象。你需要一个框架来做到这一点。这种框架称为ORM。 LINQ就是其中之一。

总而言之,LINQ可以被视为使用应用程序级实体在高级别上统一访问数据库的策略,而无需使用数据库级对象。

P.S。您有特定问题或只是寻求哲学讨论吗?

答案 1 :(得分:1)

进一步了解@Developer Art的答案;这可能不是你提出的问题,但你应该从应用程序中抽象出数据访问 - 不要将你的应用程序“硬编码”到特定的数据访问实现 - 这样你就可以换掉不同的数据访问实现了需要。这可能是:

  • 访问不同类型的存储库(DB,flatfile,service)。
  • 不同的数据库平台(MS SQL,Oracle,MySQL等)。
  • 迁移到更新的技术 - 比如ADO.NET到Linq2SQL或EF4。
  • 或者,如果您提供某些内容(可能是开源代码),其他人可以编写数据访问提供程序,以便他们能够在有特定需求时编写自己的实现。