Open
Description
该场景特殊,一般aop 使用场景应该佷难遇见
应该判断 method.IsAbstract
if (method.IsAbstract)
{
var methodBuilder = implTypeBuilder.DefineMethod(method.Name, InterfaceMethodAttributes,
method.CallingConvention, method.ReturnType,
method.GetParameters().Select(x => x.ParameterType).ToArray());
var ilGen = methodBuilder.GetILGenerator();
if (method.ReturnType != typeof(void))
{
ilGen.EmitDefault(method.ReturnType);
}
ilGen.Emit(OpCodes.Ret);
implTypeBuilder.DefineMethodOverride(methodBuilder, method);
}