【问题标题】:Exception thrown when using DapperExtensions to "GetList"将 DapperExtensions 用于“GetList”时引发异常
【发布时间】:2014-02-18 19:01:01
【问题描述】:

我认为 DapperExtensions 有一个非常简单的用例:

using (IDbConnection connection = Database.CreateConnection())
{
    var model = connection.GetList<MyModelPoco>().ToList();
}

但是,抛出异常:

找不到方法:'System.Collections.Generic.IEnumerable1&lt;System.__Canon&gt; Dapper.SqlMapper.Query(System.Data.IDbConnection, System.String, System.Object, System.Data.IDbTransaction, Boolean, System.Nullable1, System.Nullable`1)'。

我将 NuGet 用于 Dapper (v1.13) 和 DapperExtensions (v1.4.3)。

任何想法为什么这不起作用?我补充说:

using Dapper;

但是,这并不影响结果。 (Resharper 还抱怨说 using 指令是不必要的。)

当我直接使用 Dapper 时,它运行良好(尽管我注意到我使用它的方式与 DapperExtensions 不同):

using (IDbConnection connection = Database.CreateConnection())
{
    var recordsets = connection.QueryMultiple("stored_procedure_name", new {parameterValue}, commandType:CommandType.StoredProcedure);
    var model1 = recordsets.Read<Model1Poco>().SingleOrDefault();

    if (model1 == null) return null;

    model1.Model2Collection = recordsets.Read<Model2Poco>().ToList();

    return model1;
}

我做了一些“谷歌搜索”,似乎大家一致认为 DapperExtensions 应该是一种简单而有趣的东西。

【问题讨论】:

    标签: c# orm ado.net dapper dapper-extensions


    【解决方案1】:

    事实证明,我的解决方案中的一个项目具有 Dapper dll 的旧副本。即使我在项目中使用的是最新版本的 Dapper(来自 NuGet),但在构建期间部署的 dll 肯定是旧版本。

    更新所有项目引用以使用最新的 NuGet 包后,一切正常。

    【讨论】:

      猜你喜欢
      • 2014-11-07
      • 1970-01-01
      • 2020-02-07
      • 1970-01-01
      • 2018-06-03
      • 2015-10-07
      • 2021-07-26
      • 2014-10-25
      • 2012-02-11
      相关资源
      最近更新 更多