gpt4 book ai didi

c# - Entity Framework 术语中的 "Model"和 "Context"有什么区别?

转载 作者:可可西里 更新时间:2023-11-01 07:46:08 24 4
gpt4 key购买 nike

Entity Framework 术语中的“模型”和“上下文”有什么区别?

我在应用程序中使用 Entity Framework 数据库优先方法。这些术语在我阅读有关 EF 实现策略的不同论坛和文章时多次出现。我似乎无法弄清楚这两者有何不同(甚至不仅仅是 Entity Framework ,而是一般的软件开发)。人们使用这些词就好像它们是不同的,但后来有些人似乎可以互换使用这些词。

最佳答案

上下文

这很简单。上下文是 DbContext 或旧的 ObjectContext 类,它们是 Entity Framework 数据访问层的核心。它通过强类型实体集提供透明的数据库访问,跟踪和保存更改,管理数据库事务和连接,并包含许多实用方法来促进各种数据访问任务(尤其是 DbContext) .

型号

这可以是两个(或三个)事物。

  • 数据模型或存储模型。这是 EF 数据访问层底层数据库的关系模型。
  • 概念模型或类模型。这是代表数据库的 .Net 类模型。该模型可以由 EF(数据库优先)生成,也可以是现有的类模型(代码优先)。概念模型和存储模型通过映射链接,因此 EF 知道如何从数据库记录填充 .Net 类,以及如何将 .Net 类保存到数据库。
  • 有些人将概念模型中的类称为“模型”。这没有错,但我更喜欢使用名称 entities为此。

所以上下文模型是两个完全不同的东西。您可能会说上下文是两种不同类型模型之间的中间人。

关于c# - Entity Framework 术语中的 "Model"和 "Context"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18642203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com