2010-04-21 11 views
6

Me preguntaba si esta técnica tiene un nombre - cambiar los métodos de estado para devolver esto, para poder escribirlos en el modo linq method().method().method().C# - ¿Cómo se llama esta técnica?

class Program 
{ 
    static void Main(string[] args) 
    { 
     Test t = new Test(); 
     t.Add(1).Write().Add(2).Write().Add(3).Write().Add(4).Write().Subtract(2).Write(); 
    } 
} 

internal class Test 
{ 
    private int i = 0; 

    public Test Add(int j) 
    { 
     i += j; 
     return this; 
    } 

    public Test Subtract(int j) 
    { 
     i -= j; 
     return this; 
    } 

    public Test Write() 
    { 
     Console.WriteLine("i = {0}",i.ToString()); 
     return this; 
    } 
} 
+1

¿Se refiere a la interfaz de Fluent? –

+0

Nota: algunos métodos podrían devolver otro objeto, no solo 'this' y seguir obteniendo el mismo efecto. En general, se trata de devolver algo que permite un encadenamiento adicional. – Richard

+6

Prefiero llamarlo 'código feo', pero esto es solo una opinión personal. –

Respuesta

1

API Fluido.

Muchos frameworks ahora lo admiten.

Cuestiones relacionadas