0
Action<SPItemEventProperties> deleteAction = DeleteWorkspace;
AsyncCallback deleteDone = deleteAction.EndInvoke;
SPSecurity.RunWithElevatedPrivileges(() => deleteAction.BeginInvoke(properties, deleteDone, null));
これは、非同期にDeleteWorkspaceを呼び出して、EndInvokeを呼び出したときに書きましたが、正しく動作するとは限りません。私はステップを踏んだが、それは動作するように見えるが、シンタックスは自分自身を二番目に推測させている。ネット上でこれを見たことがないからだ。この非同期ラムダ暗号は私の考えることをしていますか?
コメント?
は
私の質問だったJoelさん、ありがとうございました。私は閉鎖の使用を強制するとは思っていませんでした。あなたはどのようにbtwを確認できますか?しかし、答えをありがとう! – emalamisura
ラムダに変数を渡すたびに、クロージャが使用されます。それに気づくのは難しいことです。 –
うん、それは絶対に当てはまる。楽しみのために、逆コンパイルされたコードを見てください。つまり、 "ローカル変数"は実際にはC#コンパイラが作成した新しいクラスのメンバになります。 –