问题标签 [entity-framework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1605 浏览

entity-framework - 实体框架基本上是另一个 CRUD 代码生成器吗?

实体框架只是另一个 CRUD 代码生成器的花哨名称吗?

或者还有更多?

0 投票
1 回答
654 浏览

entity-framework - Entity Framework 目前适合什么类型的项目?

我最近在收听一个播客,该播客详细讨论了实体框架 (EF) 的缺点。

但是,他们的意见可能需要(我)持保留态度,据我所知:

  • 这些人都是 ORM 专家。
  • 他们要么靠 ORM 工具谋生,要么靠自己的爱好
  • 他们将 ORM 工具用于大规模应用程序
  • 他们也非常关心我不一定关心的 ALT.NET 的超级策略(YET)

我的总体问题是:

  • Entity Framework 目前适合什么类型的项目?

但是这里有一些子问题可能会帮助您了解我对这个问题的看法:

  1. EF总比没有好?我厌倦了手工做所有事情。
  2. 它是否接近于与 LINQ to SQL “解决相同的问题”?2a. 如果是的话,什么时候比另一个更适合?*在我用这个标签检查问题时发现了一个关于这个问题的线程,所以没关系*
  3. 它是否适合简单的“快速而肮脏”的应用程序,例如当您的大部分管理 CRUD 表单时?

编辑:对于那些可能好奇的人,我主要从事中小型应用程序。这可以指导你的反应,或者不是。

0 投票
2 回答
8662 浏览

linq - 在 LINQ to ADO.net 数据服务查询中使用 Expand 的替代方法是什么?

我想知道在执行 LINQ to ADO.net 数据服务查询时是否有任何替代方法可以使用 Expand 关键字。expand 方法确实为我提供了我感兴趣的数据,但它要求我提前了解我将要使用的所有子对象。我的绝对偏好是,当我访问这些子对象时,它们会为我延迟加载,但这看起来不是一个选项(我可以将此延迟加载添加到该子对象属性的 get 中,但它当我更新数据服务引用时被清除)。

有没有人对这种情况有任何建议/最佳实践/替代方案?谢谢。

===== 使用具有 MailingAddress 的成员的示例代码 =====

作品:

会更喜欢(如果这然后加载MailingAddress,真的很喜欢)

或者至少(注意:如果我在服务操作中作为 LINQ to Entities 这样做,则与 MailingAddressReference 类似的东西在服务器端工作)

0 投票
7 回答
95570 浏览

c# - 在 C# 中以字符串形式获取类的名称

有没有办法获取类名并将其转换为 C# 中的字符串?

作为 Entity Framework 的一部分,.Include 方法接受一个以点分隔的字符串列表,以便在执行查询时加入。我有想要加入的类模型,出于重构和未来代码维护的原因,我希望在引用此类时能够具有编译时安全性。

因此,有没有办法可以做到这一点:

我不认为我可以在没有实例的情况下执行 GetType()。有任何想法吗?

0 投票
2 回答
624 浏览

c# - MS 实体框架的最佳起点是什么?

请给我关于实体框架的最佳指导方向。

0 投票
2 回答
3960 浏览

entity-framework - 在 ADO.Net 数据服务中使用 .SaveChanges() 方法的最佳方式是什么?

有人对 .SaveChanges() 方法的使用有一些好的信息吗?

尝试在我的数据上下文对象上使用 .SaveChanges() 方法时遇到了各种问题。我从现有数据源获取数据,创建适当的 EntityFramework/DataService 对象,用数据填充这些创建的对象,将这些对象添加到上下文中,然后通过调用 .SaveChanges 保存该数据。

我想出的场景(以及与之相关的问题)就是这样......在每个场景中,我都有一个 foreach 循环,它从 DataTable 中的行获取数据并生成对象,将它们附加到上下文中他们去。(注意:通过 SetLink 调用附加的三个对象一个“成员”和两个“地址”) - 基本上,这是一种转换工具,用于从一个数据存储中获取数据并将其按摩到数据服务公开的数据存储中。

  • 在 foreach 循环结束时(即循环外)调用一次不带任何参数的 .SaveChanges()
    • OutOfMemory 错误大约 1/3 的方式(90,000 次保存中的 30,000 次) - 不确定这是如何发生的,尽管每个保存项都是对数据库的单独 SQL 调用,内存不足是什么?
  • 每个循环调用一次不带任何参数的 .SaveChanges()
    • 这有效,但绝对需要永远(90,000 次保存需要 8 小时)
  • 在 foreach 循环结束时调用 .SaveChanges(SaveChangesOption.Batch) 一次
    • 同样的 OutOfMemory 错误,但没有任何保存到数据库
  • 每个循环调用一次 .SaveChanges(SaveChangesOption.Batch)
    • 404 未找到错误
  • 每 10 个循环调用一次 .SaveChanges(SaveChangesOption.Batch)
    • 400 Bad Request 错误(偶尔)
    • 多次迭代后 OutOfMemory
  • 每次循环创建上下文一次的随机尝试次数,或者将其作为循环开始时的变量,或者将其作为可用的私有成员变量。
    • 不同的结果,无法量化,没有一个真的那么好

在进行这样的大数据加载时,从客户端对象调用 .SaveChanges() 的首选方法是什么?关于 .SaveChanges() 的工作原理,我有什么不明白的吗?谁能提供更多详细信息,说明应如何使用此功能以及通过数据服务保存数据的限制(如果有)是什么?.SaveChanges() 方法调用是否有任何最佳实践?.SaveChanges() 方法调用是否有任何特别好的文档?

0 投票
6 回答
22600 浏览

c# - 实体框架验证

我正准备开始一个新项目,我一直在研究实体框架。我的问题是验证实体的最佳策略是什么?我从事的其他项目在大多数验证中都使用了属性,但显然这在实体框架中是不可能的。是通过处理属性设置器中的部分方法来做到这一点的唯一方法吗?非常感谢所有建议。

0 投票
2 回答
1480 浏览

visual-studio-2008 - VS.NET 2008 中的实体框架入门

在 VS.net 2008 中开始使用实体框架到底需要什么?

我在输入此内容时正在下载 vs.net 2008 的 SP1,还有什么我遗漏的吗?

据我了解,我将不得不创建一些 XML,然后使用 .exe 工具吐出代码?

0 投票
1 回答
178 浏览

entity-framework - db schema 完整,Entity Framework 可以生成 Storage Schema 吗?

如果我已经完成了数据库架构,实体框架能否以某种方式为我生成存储架构?

或者,如果我开发了类,它是否可以生成其他描述类及其关系的 xml?

0 投票
2 回答
3363 浏览

asp.net - 使用 Entity Framework 和 VB.NET 构建解耦的 N 层应用程序

所以我们正在构建一个应用程序

  • UI 层(Web、移动、Ajax 客户端等)
  • 服务/API 层
  • 业务逻辑层
  • 数据访问层

我们的目标是拥有从服务层到 DAL 的实体框架依赖关系。这意味着服务层将只接受和返回 POCO(普通的旧 CLR 对象)。

我们目前正在做的是手动编写服务层和业务逻辑层之间的映射层,将 POCO 转换为 EF 实体,反之亦然。

所以简而言之,页面有表单,表单有代码隐藏,它获取表单内容,将它们填充到 POCO 中,然后将其发送到服务层。服务层转换为 EF 实体,将其发送到业务逻辑层,业务逻辑层对实体执行某些转换,然后与 DAL 交互以使其持久化。

是的,它有点乏味,但我们想知道是否有更好的方法?

的,我知道有人发布了一个 EF Poco 适配器,但它都是用 C# 编写的,我们更喜欢 VB.NET 解决方案。

的,切换到 NHibernate 是最后的选择,因为我们已经深入开发周期。