Category Archives: K.I.S.S

Keep It Simple Stupid Philosophy

Generar JSON Postman Collection desde WebApi

Para aquellos que no conozcan Swagger o que no vean viable su utilización a estas alturas de su proyecto, aquí os dejo el código de un controlador que permite exportar tu WebApi a un JSON que podrás importar en Postman y te permitirá tener todas las operaciones ordenadas en una Colección. Es totalmente configurable, como podréis ver,  y pueden añadirse un sin fin de opciones; aquí solo está hecho lo básico, que os permitirá hacer las llamadas y obtener las respuestas de vuestras operaciones.

Validaciones, terribles validaciones…

Una forma elegante de validar numerosas propiedades:

Queremos validar que ciertos campos del objeto Address estén rellenos:

public class Address : EntityBase
{
	public string City { get; set; }
	public string Country { get; set; }
	public string Name { get; set; }		
	public string PostalCode { get; set; }        
	public string Street { get; set; }
	public string StreetNumber { get; set; }
}

Visual Studio 2015 Android Emulator not working

Actualización: Primero…leámos esta página: Xamarin Developer

Si tu Visual Studio 2015 Android Emulator no funciona, arranca pero entra en un bucle infinito infernal de “starting SO…” y ahí se queda por los siglos de los siglos…

Si para arreglarlo lo has  desinstalado, lo has vuelto a instalar, has desinstalado Hyper-V, lo has vuelto a instalar;

Si has probado esto: Juanlu, elGuerre Blog

Y 1000 cosas más que no te han solucionado el problema,  aquí te traigo la solución que me ha funcionado a mí.

Fuente: Post StackOverflow

C# Singleton

Para el despistado:

 

public class MySingletonClass
{        
        private static MySingletonClass instance;

        public static readonly object Padlock = new object();

        public static MySingletonClass Instance
        {
            get
            {
                lock (Padlock)
                {
                    if (instance != null)
                    {
                        return instance;
                    }

                    instance = new MySingletonClass();
                    return instance;
                }
            }
        }
}

 

Función con tipos genericos

La comodidad de usar tipos genéricos:

private T ParseToNumber<T>(string value, Type type)
{
    if (string.IsNullOrEmpty(value))
    {
        return (T)Convert.ChangeType(0, typeof(T));
    }
    if (type == typeof(short))
    {
        return (T)Convert.ChangeType(short.Parse(value), typeof(T));
    }
    if (type == typeof(ulong))
    {
        return (T)Convert.ChangeType(ulong.Parse(value), typeof(T));
    }
    if (type == typeof(ushort))
    {
        return (T)Convert.ChangeType(ushort.Parse(value), typeof(T));
    }
    return (T)Convert.ChangeType(0, typeof(T));
}

 

La llamada:

var myNumber= this.ParseToNumber<short>("1", typeof(short)),

 

Eliminar Proyectos Recientes de la Pagina de Inicio de Visual Studio

A medida que vamos abriendo proyectos en Visual Studio, estos se van memorizando para ser accesibles desde la “Start Page”.

Podemos eliminar los que no deseemos posicionando el botón encima de su nombre, clic derecho y eliminar; pero si lo que queremos es borrar todas las entradas de una vez podemos crear una acción que lo haga por nosotros.