ADO.NET 实体框架或 ADO.NET

2024-02-14

我正在开始一个新项目ASP.NET 和 Windows 服务器.

该应用程序预计会非常大并且服务大量客户,高频次拉取和更新。改变数据。

我之前创建过项目Linq-To-Sql 或使用 Ado.Net.

我对该项目的计划是使用VS2010和新的EF4框架。

  • 很高兴听到其他人的声音 程序员关于开发的选择 与实体框架

  • 与之前相比的优点和缺点 经验?

  • 您认为 EF4 已经准备好了吗? 生产?

  • 我应该冒险还是坚持使用普通的老式 ADO.NET?

EF4 是否真的准备好投入生产还很难说,因为它还没有正式发布……但是所有关于它的初步经验和报告似乎都表明它相当不错。

但是:您需要考虑 EF 想要解决的问题;它是一种两层方法,一层映射到数据库中的物理存储模式(并支持多个后端),第二层是您编程所针对的概念模型。当然,这两层之间需要映射。

因此,如果您有大量表、需要支持多个后端、需要能够将物理模式映射到不同的概念模式等等,那么 EF4 就非常有用。它非常适合复杂的企业级应用程序。

但这是有代价的——这些额外的层确实会对性能、复杂性和可维护性产生影响。如果您需要这些功能,毫无疑问您会很乐意支付这个价格。但你需要那个吗?

当然,您可以直接回到 ADO.NET - 但您真的想摆弄 DataTables、DataRows 和非类型化吗Row["RowName"]再次构建??真的吗???

所以我的建议是这样的:

  • 如果您只需要 SQL Server 作为后端
  • 如果您有一个数据库表到模型中的一个实体对象的相当简单且直接的映射

然后:使用Linq 到 SQL!为什么不?? Microsoft 在 .NET 4 中仍然完全支持它 - 哎呀,他们甚至做到了错误修复并添加了一些零碎内容 http://damieng.com/blog/2009/06/01/linq-to-sql-changes-in-net-40- 它快速、高效、精简且简单 - 那么为什么不呢?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ADO.NET 实体框架或 ADO.NET 的相关文章

随机推荐

  • Android 4.4 (API 19) 上的 MediaPlayer 流媒体问题

    我的应用程序在 MediaPlayer 流媒体播放方面出现问题 特别是在 Nexus 5 上 我不确定这是否是 Nexus 5 或 API 级别 19 导致的问题 基本上我的 MediaPlayer 已经准备好了 我打电话MediaPlay
  • Prettier 使用 pre-commit(.com) 不会重新暂存更改

    我开始使用 Prettier eslint 使用pretty quick husky option 2 https prettier io docs en precommit html 它的行为符合预期 即在提交 或修改 期间重新格式化代码
  • Heroku CLI 在 Ubuntu 16.04 上无响应

    我正在尝试在 Ubuntu 16 04 上安装 heroku cli 遵循此处的文档 Heroku CLI 文档 https devcenter heroku com articles heroku cli download and ins
  • 更改 NSLayoutConstraint 常量在layoutSubviews中不起作用

    当视图动画为横向模式时 我试图更改 UIButton 的宽度 但是该方法被调用是因为我在那里设置了断点 但按钮的宽度没有改变 我将 IBOutlet 约束添加到按钮的宽度 名为 globalButtonWidthConstraint 我当前
  • 如何使该链接在 JQuery UI 自动完成中可单击?未捕获的类型错误

    我正在尝试使用 Jquery UI 自动完成插件 并且我想在建议框中呈现一些 html 并带有可点击的链接 html 似乎呈现正常 但是当我单击链接时 它们不起作用 并且我进入了我的开发人员日志 jquery ui min js 239Un
  • 子例程是否应该始终显式返回?

    If perlcritic http www perlcritic org 说 子项中没有返回值是错误的 如果确实不需要它们 还有什么选择 我养成了两个明显的坏习惯 我显式地将变量分配给 main 命名空间 然后我在 subs 中使用这些变
  • 使用 Swift 组合创建计时器发布器

    我一直在看通过 SwiftUI 的数据流 WWDC 演讲 https developer apple com videos play wwdc2019 226 他们有一张包含示例代码的幻灯片 其中使用连接到 SwiftUI 视图的计时器发布
  • 从 chrome 获取密码

    是否可以在 Chrome 扩展程序中访问保存的密码 我正在查看 API 但没有找到它 我想将所有密码导出到不同的存储中 并且使用扩展似乎是合乎逻辑的方法 但我找不到如何做到这一点 谢谢你的帮助 好的 回答我自己的问题 似乎不可能通过扩展 A
  • 未生成新随机数

    您好 当我运行这段代码并返回错误距离时 不会生成新的随机数 不断生成相同的随机数 从而使我陷入无限循环 有谁知道为什么会发生这种情况 感谢您的关注 private void setRandomVerticies generate 200 t
  • 当前分支未配置为 pull 在配置中未找到 keybranch.master.merge 值

    当我尝试使用 Egit team gt pull 从远程存储库拉取时出现此错误 当前分支未配置为 pull 无值 key 在配置中找到branch master merge 您的本地 master 分支未设置为跟踪远程 master 分支
  • 一对多连接并检索单个结果

    我有两个表 在 PostgreSQL 中 如果重要的话 具有一对多关系 我需要加入它们 以便对于每个 一 我只能从 多 表中获得单个结果 不仅如此 我还需要从 许多 表中挑选出具体的结果 TABLE A ID NAME DATE MORE
  • Android 和 Arduino 都通过蓝牙接收奇怪的值

    我正在 Android 端使用 BluetoothChat 代码使用聊天框向 Arduino UNO 发送开 关信号 我发送 110 119 或下面定义的其他情况 但是当我显示接收到的值时 它显示奇怪的Arduino 串行监视器中的值 即
  • 从Word文档中获取标题

    如何使用VBA获取Word文档中所有标题的列表 你的意思是这样创建大纲 http msdn microsoft com en us library bb960898 aspx函数 实际上将源 Word 文档中的所有标题复制到新的 Word
  • Python pandas 数据框中的每个数字四舍五入 2 位小数

    这有效p table apply pd Series round 但是它没有小数位 文件说 http pandas pydata org pandas docs stable generated pandas Series round ht
  • 如何在 PyQT 小部件中嵌入 Python 解释器

    我希望能够从我的 python 应用程序中调出交互式 python 终端 我的程序中的一些 但不是全部 变量需要暴露给解释器 目前我使用子类和修改后的QPlainTextEdit并将所有 命令 路由到eval or exec 并跟踪字典中的
  • Python 3.5 urllib.request 403 禁止错误

    import urllib request import urllib from bs4 import BeautifulSoup url https www brightscope com ratings page urllib requ
  • Android Studio 不再启动:初始化“[...].FrameworkDetectionIndex”时发生致命错误

    Android Studio 不再启动 上周五一切都很好 我尝试重新安装 AS 并重新启动 我使用的是 Mac OS X Yosemite 这是错误消息 内部错误 请报告至https code google com p android is
  • MySQL中每个派生表必须有自己的别名错误

    我有以下查询 SELECT SUM cost FROM SELECT s cost FROM sandwiches AS s WHERE s name Cheese Steak UNION SELECT p cost FROM pizza
  • 如何使带有cache_path的caches_action过期?

    我正在使用以下内容缓存索引操作 caches action index cache path gt Proc new c c params expire action action gt index expire action 似乎只使索引
  • ADO.NET 实体框架或 ADO.NET

    我正在开始一个新项目ASP NET 和 Windows 服务器 该应用程序预计会非常大并且服务大量客户 高频次拉取和更新 改变数据 我之前创建过项目Linq To Sql 或使用 Ado Net 我对该项目的计划是使用VS2010和新的EF