Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 29154|Odgovoriti: 2

[Vir] .NET/C# atributi CallerMemberName, CallerFilePath, CallerLineNumber

[Kopiraj povezavo]
Objavljeno na 11. 08. 2021 09:45:56 | | | |
V .Net 4.5 so bili uvedeni trije atributi: CallerMemberName, CallerFilePath in CallerLineNumber. S pomočjo prevajalnika lahko dobite ime klicne funkcije (natančneje, naj bo član), klicno datoteko in številko klicne linije.

Dokumentacija:https://docs.microsoft.com/en-us ... membernameattribute

Za pridobitev lahko uporabite tudi objekte StackTrace in StackFrame, vendar jih s to funkcijo lahko pridobimo bolj priročno.

StackTrace: Predstavlja sled sklada, ki je urejena zbirka enega ali več okvirjev sklada.

StackFrame: Zagotavlja informacije o StackFrame (klic funkcije v klicnem skladu, ki predstavlja trenutno nit).

Prej sem uporabljal AOP za pridobitev imena metode klicatelja preko StackTrace, koda pa je naslednja:


Z uporabo te funkcije je testna koda naslednja:

Ometi:



(Konec)




Prejšnji:Posodobitev Maven Politika posodabljanja posnetkov Politike
Naslednji:Java bajt[] in InputStream se med seboj pretvorita
 Najemodajalec| Objavljeno na 27. 11. 2022 21:09:56 |
 Najemodajalec| Objavljeno na 27. 11. 2022 22:35:47 |
Pridobite trenutno ime metode iz asinhrone funkcije?

Prijava do hiperpovezave je vidna.

C# 5 dodaja lastnosti informacij o klicatelju, kar vam lahko ponudi več tistega, kar iščete. Upoštevajte, da ti vstavijo ustrezne informacije ob prevajanju v klicno stran, namesto da bi uporabljali podatke med izvajanjem. Bolj omejena funkcionalnost (seveda nimaš celotnega sklada klicev), a veliko hitreje.





Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com