Leistung der Erweiterungsmethode

<code>            /*I have defined Extension Methods for the TypeX like this*/ 
        public static Int32 GetValueAsInt(this TypeX oValue)
        {
            return Int32.Parse(oValue.ToString());
        }
        public static Boolean GetValueAsBoolean(this TypeX oValue)
        {
            return Boolean.Parse(oValue.ToString());
        }


         TypeX x = new TypeX("1");
         TypeX y = new TypeX("true");


         //Method #1
         Int32 iXValue = x.GetValueAsInt();
         Boolean iYValue = y.GetValueAsBoolean();

         //Method #2
         Int32 iXValueDirect = Int32.Parse(x.ToString());
         Boolean iYValueDirect = Boolean.Parse(y.ToString());
</code>

Lassen Sie sich nicht von TypeX mitreißen und sagen Sie, dass ich diese Methoden in TypeX anstatt in der Extension definieren soll. Ich habe keine Kontrolle darüber.

Ich wollte den TypeX in Int oder Boolean konvertieren und diese Operation ist eine häufige Sache, die ich an vielen Stellen im Code mache. Ich wollte wissen, ob sich die Leistung dadurch verschlechtert. Ich habe versucht, IL-Code mit Reflector zu interpretieren, bin aber nicht gut darin. Für das obige Beispiel ist möglicherweise keine Leistungsminderung zu verzeichnen. Im Allgemeinen wollte ich wissen, welche Auswirkungen die Verwendung der Erweiterungsmethoden auf die Leistung hat.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage