Extension Methdos são um recurso interessante do Framework .NET porém, para testarmos o seu funcionamento, geralmente precisamos escrever o código no Visual Studio e gerar um programa.
Para quem não quer usar o Visual Studio uma alternativa interessante é usar o programa gratuito LINQPAD que pode ser baixado em http://www.linqpad.net.
Para fazer os testes com Extension Methods primeiro mude o tipo da consulta para C# Program (isto se você estiver usando esta linguagem) no campo “Language”.
Daí em diante o editor de texto prepara a estrutura do programa para o formato abaixo.
void Main()
{
}
// Define other methods and classes here
A classe para os métodos de extensão deve ser colocada fora do método definido em "void Main()".
void Main()
{
}
// Define other methods and classes here
public static class MetodosDeExtensao
{
public static int ContarPalavras(this string str)
{
return str.Split(' ').Length;
}
}
O código que irá consumir o método de extensão deve ser colocado dentro do método "Main()".
void Main()
{
var minhaString = @"
Testando Extension Methodos sem o Visual Studio
Extension Methdos são um recurso interessante do Framework .NET porém,
para testarmos o seu funcionamento, geralmente precisamos escrever o código no Visual Studio e gerar um programa.
Para quem não quer usar o Visual Studio uma alternativa interessante é usar o programa gratuito LINQPAD que pode
ser baixado em http://www.linqpad.net.
Para fazer os testes com Extension Methods primeiro mude o tipo da consulta para C# Program (isto se você estiver
usando esta linguagem) no campo “Language”.";
Console.WriteLine("Palavras encontradas na string: {0:n0}", minhaString.ContarPalavras());
Console.WriteLine("Caracteres com espaços: {0}", minhaString.Length);
Console.WriteLine("Caracteres sem espaços: {0}", minhaString.Replace(" ", "").Length);
}
Este código produz a seguinte saída: