Я создаю динамический тип, у которого есть метод, который я хотел бы вернуть объект.Я не понимаю, как этого добиться.Вот что у меня есть:
// .. stuff to create type builder
MethodBuilder builder =
typeBuilder.DefineMethod(
method.Name,
MethodAttributes.Virtual | MethodAttributes.Public,
method.CallingConvention,
method.ReturnType,
typeArray1);
builder.InitLocals = true;
ILGenerator gen = builder.GetILGenerator();
Object myObjectIdLikeToReturn = someMethodCall();
//gen.??(??????????) // here's where I'm lost
gen.Emit(OpCodes.Ldloc_0);
gen.Emit(OpCodes.Ret);
Я считаю, что если я правильно читаю msdn, мне нужно получить ссылку на myObjectIdLikeToReturn в стеке - однако мне не повезло.Кто-нибудь может указать мне правильное направление?
Редактировать: Чтобы сделать это более ясным.Я пытаюсь написать эквивалент в IL:
public virtual Object MyNewMethod() {
return myObjectIdLikeToReturn;
}