Temas importantes de C#

Los métodos de extensión (extension method) en C#

En esta lección vas a añadir un método nuevo al tipo string existente sin modificar ese tipo.

Introducción

Los métodos de extensión (extension method) permiten "añadir" métodos a un tipo existente, incluso a tipos de .NET como string. En realidad se trata de un método static, pero se llama con la misma sintaxis que un método del objeto, lo que hace el código más legible y fácil de descubrir.

La palabra clave this delante del primer parámetro de Truncate indica que es un método de extensión del tipo string. Así puedes llamar a "CodeUtility".Truncate(4) como si Truncate fuera un método propio de las cadenas. Corta la cadena a 4 caracteres y añade puntos suspensivos, lo que da Code…. El tipo string original no se modifica en absoluto.

Ejemplo de C# ejecutable

C#
Ejecutar código →
Program.cs
using System;

static class StringExtensions
{
    public static string Truncate(this string value, int length)
        => value.Length <= length ? value : value[..length] + "…";
}

class Program
{
    static void Main() => Console.WriteLine("CodeUtility".Truncate(4));
}
Resultado de la ejecución
Code…

Practica con el depurador

Pon un punto de interrupción en una asignación o condición importante, pulsa Debug y revisa los valores locales antes de pasar a la siguiente línea.

Practica con un reto

Usa lo que cubre esta lección para resolver un problema real. Cada reto se ejecuta en el navegador, con pruebas al instante y una revisión de IA.

Todos los retos