В комментарии вы пояснили, чего хотите достичь: вы хотите вызвать событие, чтобы ваша сборка была загружена. Вы не можете сделать это так, как вы думаете, это работает. Чтобы загрузить свою сборку вручную, просто сделайте это, нет необходимости в событии. Событие вызывается, когда среда выполнения пытается разрешить указанную сборку, но не может ее найти.

отаю с AssemblyResolve специально. Вот мой код, а затем мой вопрос:

var a = AppDomain.CurrentDomain;
a.AssemblyResolve += new ResolveEventHandler(HandleIt);

Private Assembly HandleIt(object sender, ResolveEventArgs args){
    //Does stuff, returns an assembly
}

Поэтому я добавляю HandleIt к своему событию AssemblyResolve. Как я могу добавить это к тому событию и передать аргумент с этим как:

a.AssemblyResolve += new ResolveEventHandler(HandleIt(AnArgument));

Это отталкивает меня, так как HandleIt принимает аргументы, но ни один явно не передается, когда он добавляется в событие AssemblyResolve. Я ожидал бы что-то вроде:

a.AssemblyResolve += new ResolveEventHandler(HandleIt(aSender,someArgs));

Так что да, я просто хочу иметь возможность отправить еще один аргумент в мою функцию HandleIt при добавлении его в мое событие AssemblyResolve.

Надеюсь, это имеет смысл, спасибо.

Приложение:

if(aBool){
    a.AssemblyResolve += new ResolveEventHandler(HandleA);
}
else{
    a.AssemblyResolve += new ResolveEventHandler(HandleB);
}

HandleA(object sender, ResolveEventArgs args){
    Handle(true);
}
HandleB(object sender, ResolveEventArgs args){
    Handle(false);
}
Handle(bool isA){

}

vs-

if(aBool){
    a.AssemblyResolve += (object s, ResolveEventArgs a) => Handle(s,a,true);
}
else{
    a.AssemblyResolve += (object s, ResolveEventArgs a) => Handle(s,a,false);
}

Handle(object sender, ResolveEventArgs args, bool isA){

}