Det ved man jo reelt set også altid, men mindre man laver noget dynamisk loading, og så tror jeg ikke han ville have problemer med at finde typen, hvis man roder med dynamisk load af typer.
Hvis spoergsmaalet gaar paa navnet paa variablen, saa kan man ikke finde det (for release version som koerer uden om debugger), fordi efter at vaer kommer gennem C# og JIT compileren saa er den kun en adresse og ikke et navn paa variablen.
Det er jo ikke sikkert at man kender variable navnet i koden. Hvis f.eks. man har 10 forskellige collections, og så kalder en metode som bare modtager en generel collection.
Jeg har brug for at kende variabel navnet, da jeg skal skrive noget fejlinfo til eventlog hvor jeg gerne vil skrive det.
Måske kan det ikke findes efter compile, men man kan jo godt se alle mulige andre ting, f.eks. metode navne og linjenumre vha stacktrace (kommer selvfølgelig an på hvilken options man har på compile), så jeg synes da ikke det ville være mærkelig hvis man også kunne se variabel navnet.
private void metode(Object o) { //Her kender man ikke variabel navnet på den string //metode er kaldt med }
public void run() { string a = "test"; string b = "test2"; metode(a); }
Men nu ved nærmere eftertanke tænker jeg at det måske ikke kan lade sig gøre, fordi oppe i metode er varibel navnet vel o (hvis man endelig kunne finde det). Så jeg bliver nok nødt til at finde en anden løsning.
Ja tak!, afart af samme løsning kom vist selv frem til.
Det kan jo selvfølgelig ikke lade sig gøre som jeg har tænkt det oprindeligt, pga OOP tanken med at den nye variabel kommer til at pege.
Men iøvrigt kan man altså godt se alt muligt andet om koden, linjenummer og metode navn, og hvilken metode der kaldte. Altså samme info som man ser når der kommer expceptions. Vha af det der stacktrace.
ja, det er der samme sted Exception får der information fra. Men de kender heller ikke variable navnene som sådan. De pejer jo bare på en linje og siger et instance måske er null.
mvh
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.