私のアプリケーションには、小さなアクション ログがあります。そこで、アプリケーション内の特定のメソッドの最後のいくつかの呼び出しを次のように保存します。
saveLastAction(MethodBase.GetCurrentMethod(), getCurrentStatus(), item, /*loadFresh*/ false);
最後のアクションをナビゲートして更新することができます
public void Refresh(bool loadFresh = true)
{
if (!isInitialized) return;
try
{
lastStatus = getCurrentStatus();
var parameters = lastActionsParameters.Pop();
var method = lastActions.Pop();
//Set the load Fresh parameter to True
parameters[method.GetParameters().First(pi => pi.Name == "loadFresh").Position] = loadFresh;
//Invoke the Method again with the adopted parameters
method.Invoke(this, parameters);
}
catch
{
}
}
saveLastAction を呼び出すメソッドの 1 つを非同期に変更するまで、私は完全に機能しました。それ以来、MethodBase.GetCurrentMethod()
呼び出した実際の関数ではなく、MoveNext 関数のみを返します。
保存時でも呼び出し時でも、呼び出された関数の実際の MethodBase オブジェクトにアクセスする方法はありますか。
よろしくお願いします