Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 29154|Odpoveď: 2

[Zdroj] .NET/C# atribúty CallerMemberName, CallerFilePath, CallerLineNumber

[Kopírovať odkaz]
Zverejnené 11. 8. 2021 9:45:56 | | | |
V .Net 4.5 boli zavedené tri atribúty: CallerMemberName, CallerFilePath a CallerLineNumber. S pomocou kompilátora môžete získať názov volajúcej funkcie (presnejšie, mala by byť členom), volací súbor a číslo volacieho riadku.

Dokumentácia:https://docs.microsoft.com/en-us ... membernameattribute

Môžete tiež použiť objekty StackTrace a StackFrame na ich získanie, ale s touto funkciou ich môžeme získať pohodlnejšie.

StackTrace: Predstavuje stack trace, čo je usporiadaná kolekcia jedného alebo viacerých stack rámcov.

StackFrame: Poskytuje informácie o StackFrame (volanie funkcie v volacom zásobníku, ktoré reprezentuje aktuálne vlákno).

Predtým som používal AOP na získanie názvu metódy volajúceho cez StackTrace a kód je nasledovný:


Použitím tejto funkcie je testovací kód nasledovný:

Stvárnenie:



(Koniec)




Predchádzajúci:Maven updatePolitika aktualizácie snapshot
Budúci:Java bajt[] a InputStream sa navzájom konvertujú
 Prenajímateľ| Zverejnené 27. 11. 2022 21:09:56 |
 Prenajímateľ| Zverejnené 27. 11. 2022 22:35:47 |
Získať aktuálny názov metódy z asynchrónnej funkcie?

Prihlásenie na hypertextový odkaz je viditeľné.

C# 5 pridáva vlastnosti informácií o volajúcich, ktoré vám môžu poskytnúť viac toho, čo hľadáte. Všimnite si, že tieto vkladajú príslušné informácie pri kompilácii do volajúcej stránky, namiesto použitia informácií za behu. Obmedzenejšia funkcionalita (samozrejme nemáte plný volací stack), ale oveľa rýchlejšie.





Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com