【问题标题】:Unit testing Dapper Update单元测试 Dapper 更新
【发布时间】:2014-07-07 14:10:07
【问题描述】:
Database.Setup(x => x.Update(It.IsAny<Subscription>()))
                    .Callback<object>(sub => SavedSubscription = sub as Subscription);

这条线适用于 PetaPoco。由于项目要求,不得不切换到 Dapper(并且还必须添加 DapperExtensions 才能拥有 CRUD 方法)所以现在我收到此错误:

表达式树可能不包含使用 可选参数

任何想法如何处理这个?

【问题讨论】:

    标签: unit-testing nunit moq extension-methods dapper


    【解决方案1】:

    您不能使用 Moq 来模拟具有可选参数的方法(如 Update does)。有关更多详细信息,请参阅 this question,尽管您无法为 Update 方法指定所有参数。

    请注意,这是框架固有的限制,而不是起订量;您不能将带有默认参数的方法传递给Expression。 Jon Skeet 很好地演示了为什么here。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多