【发布时间】:2013-05-25 11:29:59
【问题描述】:
micro-ORM Dapper 可以非常轻松地从数据库中填充对象,而无需其他实体或类定义。以下是Dapper 代码示例。
是否有具有相同功能的等效 Microsoft 软件包?
微软最接近Dapper的包是什么?
var stuff = db.Query<stuffclass>("select a,b,c from Foo where a = {0}", x)
【问题讨论】:
micro-ORM Dapper 可以非常轻松地从数据库中填充对象,而无需其他实体或类定义。以下是Dapper 代码示例。
是否有具有相同功能的等效 Microsoft 软件包?
微软最接近Dapper的包是什么?
var stuff = db.Query<stuffclass>("select a,b,c from Foo where a = {0}", x)
【问题讨论】:
我会查看 SQL 数据 (http://sqldata.codeplex.com)。它像 Dapper 一样快速,对开发人员非常友好。
(披露 - 我是 SQL Data 的作者)
【讨论】:
好吧,我认为 Dapper 最接近 Simple.Data,它将回答您的问题,但不确定这是否符合您的要求。
【讨论】:
Enterprise Library 5.0(可能还有更早的版本,我还没有检查过)包含像 ExecuteSqlStringAccessor<TResult> 这样的方法,我相信它使用 MapBuilder<TResult> API。我没有对此进行任何工作来评论它的能力/性能。
另一个有趣的选择是使用 LINQ-to-SQL DataContext 之类的东西 不告诉它有关模型的信息,而只需使用 ExecuteQuery<TResult> method;由于数据上下文不知道该类型,它应该跳过所有身份管理器/更改管理器位。然而!应该注意的是,我们最初编写 dapper 的原因之一是因为我们注意到了性能问题(浪费了时间,与查询本身无关 - 看起来可能是元编程缓存层)。
【讨论】: