假设我有一个简单的类树:
public class Operation {
public int callback;
}
public class OperationResponse : Operation {
}
现在我想添加一个新类OperationRequest
,它有一个简单的扩展方法,如:
public static class Extensions
{
public static T GetResponse<T>(this Operation source) where T : Operation {
return new T{ callback = source.callback };
}
}
我很想用类似的东西来定义它:
[Response(OperationResponse)]
public class OperationRequest {
}
并将其扩展名指定为GetResponse<OperationResponse>
. .net4 中的属性是否可能发生这种事情以及如何做到这一点?