我见过大量在 C# 中实现动态编程的开源框架。有没有一个可以在没有任何实际具体类的情况下生成接口的实现?
具体来说,假设您有:
interface IThing {
int Id { get; set; }
string Name { get; set; }
}
你也有想要映射到 IThing 实例的对象:
class Foo {
public int FooBarId { get; set; }
public string FooBarName { get; set; }
}
我假设的助手会让我写如下内容:
IThing concreteThing = helper.Implement<IThing, Foo>()
PropertyGetter(x => x.Id).Returns(foo => foo.FooBarId)
PropertyGetter(x => x.Name).Returns(foo => foo.FooBarName);
我想在我的假装示例中,它会将异常抛出存根放入我没有提供的其他属性的设置器中......