- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我无法理解如何为特定的通用方法设置垫片。这是实际方法的签名:
public IEnumerable<TElement> ExecuteQuery<TElement>(TableQuery<TElement> query, TableRequestOptions requestOptions = null, OperationContext operationContext = null) where TElement : ITableEntity, new();
这是我目前正在尝试(但失败)配置 shim 的方式:
ShimCloudTable shimTable = new ShimCloudTable();
shimTable.ExecuteQueryOf1TableQueryOfM0TableRequestOptionsOperationContext<MyEntity> = (query, options, context) => {
return new List<MyEntity>();
};
编译器只是给我一些“无效的表达式项”错误,所以显然我在这里遗漏了一些非常基本的东西。
编辑:这是由 MS Fakes 生成的 shim 签名:
public void ExecuteQueryOf1TableQueryOfM0TableRequestOptionsOperationContext<TElement>(FakesDelegates.Func<TableQuery<TElement>, TableRequestOptions, Microsoft.WindowsAzure.Storage.OperationContext, System.Collections.Generic.IEnumerable<TElement>> shim) where TElement : ITableEntity, new();
最佳答案
我找不到任何关于这个的官方文档,但问题毕竟很简单。我习惯于将 Fakes 用于简单的方法,您只需将 Func 分配给您感兴趣的填充方法委托(delegate),如下所示:
shimAccount.CreateCloudTableClient = () => { return shimTableClient; };
但是,当涉及到泛型时,Fakes 会创建一个将 Func 作为参数的方法,而不是直接公开委托(delegate)。所以我需要的是:
shimTable.ExecuteQueryOf1TableQueryOfM0TableRequestOptionsOperationContext<MyEntity>((query, options, context) =>
{
return new List<MyEntity>();
});
关于c# - 用于通用方法的 Microsoft Fakes shim,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21146957/
我正在尝试使用更新的包重建项目但遇到此错误: [folatt@ArkOS-Dev genesis]$ ember build cleaning up... Build failed. The Broc
我正在尝试使用更新的包重建项目但遇到此错误: [folatt@ArkOS-Dev genesis]$ ember build cleaning up... Build failed. The Broc
鉴于以下情况: main.js var angular = require('angular'); 包.json { "main": "./main.js", "browser": {
我正在编写将一些数据放入分类帐的链码,然后尝试使用shim.GetStateByPartialCompositeKey()将其列出,并从迭代器中获取数据列表。现在,我想根据时间戳对数据进行排序(仅按日
我想为通用方法创建一个垫片。但在那种情况下,我对 Generic 有点麻烦。 这是我的例子: class BaseRepository where T: Entity { public T[
如主题所示。我的文件结构是: js/ |- bootstrap | |- module1 | |- module2 | |- jquery.min.js |- main.js 我的
该术语的官方解释是 es5-shim.js and es5-shim.min.js monkey-patch a JavaScript context to contain all EcmaScrip
它has been stated那: The shim allows for daemonless containers. It basically sits as the parent of the
据我了解,您可以使用 Requirejs 的填充程序来动态加载未在自己的文件中定义为模块的脚本。那么为什么我不能让这样一个简单的脚本工作呢? 这是我的非工作示例: /libs/test.js: var
我想将 bootstrap.js 和 jquery.js(均随 npm 安装)合并到vendors.js 文件中,但仍然可以通过调用 require('$') 来使用 jquery。所以我创建了 gu
我正在尝试获取与 magento 2 requirejs 一起使用的常量联系人脚本。 (我尝试将其内联添加,但它会发生冲突并导致错误) 他们的脚本需要数组 localizedErrMap 和 jQue
我发现自己需要这样的东西: // This could just as well be a concrete class. // // It is an interface for the sake
我正在尝试将现有应用程序分解为多个模块。我选择使用 Browserify 来做到这一点,因为它的语法很好地模仿了 NodeJS 的要求。 我的项目依赖于几个外部模块,其中之一是 Backbone。因此
我想将两个变量($ 和 jQuery)从 jquery 包传递到 persian-datepicker。因此,我添加了 $ 和 jQuery 作为 persian-datepicker 的依赖项。我所
我在 browserify-shim 和 bootstrap-datetimepicker 方面遇到问题。 Bootstrap-datetimepicker 需要 moment.js 但必须先加载此插
我想针对某些错误的网络行为测试存储库。我使用 MS Fakes 伪造了类(class),它看起来像这样: ShimInputRepository .AllInstanc
我在 vs 2015 上运行 angularjs2/TypeScript 项目 并按照 https://www.typescriptlang.org/docs/handbook/asp-net-4.h
我有一个测试方法,当我运行它时它很好,但在调试时失败并出现异常。下面是经过测试的方法和 VS Test Runner 的输出。异常来自 ShimsContext.Create() 信息:VS 2012
在为 BCL(或与此相关的任何库)中的类型成员创建垫片时。我们经常遇到这样一种情况,我们想要调用我们已经覆盖的原始方法(无论是在 shim 委托(delegate)内部还是外部)。例如: System
在 Visual Studio 2015 中,我有一个测试项目,我向其中添加了一个假程序集。 在单元测试本身中,我为静态泛型方法创建了一个垫片,该方法将实例返回到泛型类型,例如: using (Shi
我是一名优秀的程序员,十分优秀!