Ich möchte die Namen der Methoden so genannt meine Funktion, Es scheint ein bisschen ein Problem mit TplWie bekomme ich den Stack-Trace nur von eigenen Methoden, wenn ich TPL verwende?
Gibt es eine gute Lösung?
BTW: Ich bewusst die CallerMemberName, aber ich will eine andere Lösung wird so nicht mein Code
Krempel Hier ist mein Test-Code, so brechen kann in der nächsten Version des TPL-
class Program
{
static void Main(string[] args)
{
Console.WriteLine(F1().Result);
Console.ReadKey();
}
static async Task<string> F1()
{
return await F2();
}
static Task<string> F2()
{
var callingMethods = new StackTrace().GetFrames().Select(v => v.GetMethod().Name);
var result = string.Join(Environment.NewLine, callingMethods);
return Task.FromResult(result);
}
}
und dies ist der Ausgang
F2
Movenext
starten
F1
Haupt
...
Haben Sie darüber nachgedacht ** **, warum es ist ein bisschen ein Problem mit TPL? – Maarten
Weil sie eine andere Schicht dazwischen legen – Yacov