Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 27740|Svar: 2

[Källa] .net/C# speglar icke-anonyma funktioner <>f__AnonymousType0 metoder

[Kopiera länk]
Publicerad den 2020-10-16 17:51:42 | | | |
När du använder AOP ansikte-mot-ansikte-programmering behöver du ställa in metoden till en virtuell metod för att kunna intercepta metoden normalt. Eftersom det finns för många metoder för att missa virtuella nyckelord, använd reflektion för att få alla metoder för att avgöra om du missar nyckelord. När man använder reflektionsinsamlingsmetoden kommer ett stort antal anonyma funktioner <>f__AnonymousType0 att erhållas, och denna artikel använder reflektionsexklusionsmetoden anonym för att erhålla alla metoder för alla objekt som ärver den generiska basklassen, och texten inkluderar .NET- och .NET Core-versioner.

C# Anonym Typinlärningsdagbok
https://www.itsvse.com/thread-9417-1-1.html


Skaffa den nuvarande sammansättningen först

.NET-version:



.NET Core-version:



Basklassen som ärvs av tjänsteobjektet



Reflektionsförvärv icke-virtuell metod

När du får alla assemblies och alla metoder genom reflektion kan du få AnonymousType anonymous-metoden, som visas i figuren nedan:



.NET-versionen



.NET Core-versionen



Avgör om det är en anonym funktion



Namnrymden och Deklarationstypen för anonyma funktioner är null, och namnrymden för icke-anonyma funktioner får inte vara null!




Föregående:C# Anonym Typinlärningsdagbok
Nästa:Felsöker .NET-program med Notepad hemma på en dator i tio år
 Hyresvärd| Publicerad den 2020-10-16 18:02:10 |
När du har fått alla objekt i assemblern hittar du några anonyma objekt som genereras av +<>c-kompilatorn
CompilerGeneratedAttribut-egenskaper kan användas för att skilja mellan kompilatorgenererade objekt

Koden är följande:


 Hyresvärd| Publicerad den 29-5-2024 11:18:39 |
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com