可以模拟自定义属性c#?
例如:
[AttributeUsage(AttributeTargets.Method, AllowMultiple = true)]
public class YourAttribute : Attribute
{
}
[Your]
public void MyMethod()
{
//something
}
我想测试MyMethod,但我需要模拟属性Your。
答案 0 :(得分:1)
是的,您可以通过TypeDescriptor向实例或类型添加属性;以下示例使用Moq,但它可以应用于其他地方。
var mock = new Mock<IMyInterface>();
var attribute = new YourAttribute();
TypeDescriptor.AddAttributes(mock.Object, attribute);