我需要代理代理的属性类型。所以情况是:
我有接口IMyInterface:
public interface IMyInterface
{
public String Name {get; set;}
public Int Id {get;set;}
}
我可以很好地模拟界面,但我希望能够模拟,例如,名称属性。我意识到 String 不能被嘲笑,因为它是密封的。我希望看到的功能是:
IMyInterfaceMock.Name.Equals()
应该由拦截器处理。我无法想象现有框架甚至可以做到这一点,因为我将更改属性的类型,但我想知道是否有一种聪明的方法来实现这一点。有什么方法可以插入代理生成并修改代理的属性的返回类型?
我认为 DynamicProxy2 不可能,但我想知道是否有人知道一些魔法。