2009-10-16 4 views
2

Existe-t-il un moyen de créer une méthode d'extension pour un type? Je semble seulement être en mesure de les créer pour les instances.Méthode d'extension sur le type

public static class MyExtensions 
{ 
    public static string Test(this string s) 
    { 
     return "test"; 
    } 
} 

public class Test 
{ 
    static void TestIt() 
    { 
     string.Test(); // won't compile 

     string s = null; 
     s.Test(); 
    } 
} 
+2

Dupe http://stackoverflow.com/questions/866921/static-extension-methods –

Répondre

5

Non, ce n'est pas possible. Les méthodes d'extension ne peuvent être créées que pour les instances

+0

pourquoi le vote vers le bas ?? –

2

Non Les méthodes d'extension sont uniquement pour les instances. En d'autres termes, il n'est pas possible d'avoir des méthodes d'extension statiques.

+0

Eh bien, techniquement toutes les méthodes d'extension sont statiques ... mais je comprends votre point; –

0

Bonne réponse: Non. Les méthodes d'extension sont des méthodes pour les instances d'une classe.

Vous pouvez avoir plus d'informations de MSDN

Questions connexes