Vanguarsoft Developers blog

Ing. Javier Leal -Desarrollador CPANAX C.A / Microsoft Student Partners – VENEZUELA

Métodos de Extensión

Deja un comentario

Buenos días, eh estado planificando hacer unos trucos para mejorar el desarrollo pero no sin antes explicarles como ustedes mismos pueden construir sus propios métodos de extensión en sus proyectos .NET en esta caso utilizando C sharp como lenguaje de programación, según MSDN un Método de extensión son:

 

Son los que constituyen un tipo especial de método estático, pero se les llama como si se tratasen de métodos de instancia en el tipo extendido. En el caso del código de cliente escrito en C# y Visual Basic, no existe ninguna diferencia aparente entre llamar a un método de extensión y llamar a los métodos realmente definidos en un tipo.

La diferencia es la flexibilidad que te dan los métodos de extensión para que tu aplicación pueda reutilizas funcionalidades ya programadas

 

Lo primero que necesitamos es una Nueva Clase estática.

 

public static class Extensiones {}

 

Luego dentro de esta clase vamos a definir los métodos de extensión que a diferencia de los métodos no tienes por que hacer una instancia solo hacer una referencia de su Namespace para que este presente en la clase que deseas utilizarlo, un buen truco es usar el Namespace System para que este método de extensión este presente en todo tu proyecto.

Para definir un método extensión debemos de tener en cuento a que tipo de objeto va a aplicar, que valor devolverá, y que propiedades va a necesitar para procesar la información, ya visual Studio cuenta con una gran variedad de métodos de extensión un gran ejemplo es el ToString().

EJEMPLO:

Como ejemplo vamos a realizar un método de extensión que te devuelva el ultimo día del mes en curso, lo que quiere decir que nuestro método de extensión de aplicara sobre un DateTime con la fecha que se quiere evaluar y devolverá un DateTime con el ultimo día del mes de la fecha de entrada

Comenzamos dentro de la clase estática agregamos un método por supuesto estático.

 

public static DateTime ObtenerUltimoDiaMes(This DateTime Fecha)

{

}

En este método podemos ver que no tiene diferencia con un método normal la obligación de es que la clase y el método sea Estático y que el tipo de dato al que se le aplicara el método de extensión lleve un This.

Ahora el código es lo que ya conocemos.

 

public static DateTime ObtenerUltimoDiaMes(This DateTime Fecha)

{

        DateTime new DateTime(date.Year, date.Month + 1, 1).AddDays(-1);

}

 

Una vez que ya esta definido el método podemos utilizarlo

 

DateTime UltimodiaMes = Datetime.Now.ObtenerUltimoDiaMes();

Es bastante sencillo prueba con otros tipos de datos y mantén u librería de métodos de extensión métodos como este son muy útiles en cualquier momento del desarrollo.

Autor: Ing. Javier J. Leal H.

Desarrollador en CPANAX C.A, Microsoft Student Partners de Venezuela Amantes de nuevas Tecnologías Desarrollador es Silverlight 5, Windows 8, Windows Phone, Influenciador y Orador en Actividades Tecnológicas Microsoft

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s