Curso programando un sistema de venta real con: .Net Core, angular y Xamarin

En este curso haremos un sistema de venta real utilizando como tecnología de backend .Net Core y en el frontend Angular y Xamarin.

Me acercare lo más posible a lo que sería un sistema real, por lo cual veremos muchos temas como son:

  • Autentificación
  • Seguridad
  • Entity Framework
  • Cruds
  • Creación de servicios web
  • Aplicación de patrones de diseño
  • Diagramas de componentes
  • JWT
  • Directivas en angular
  • Servicios en angular
  • Observadores en angular
  • Y mucho más

El curso es publicado en mi canal de Youtube y para seguir el rastro te invito a que te suscribas dando clic aquí.

Curso gratis de desarrollo de aplicaciones con IONIC

En este curso te enseñare como puedes crear aplicaciones móviles con la tecnología IONIC.

Este curso esta en proceso, puedes suscribirte a mi canal para que no pierdas ningún video dando clic aquí: https://www.youtube.com/c/hdeleonnet

1.- Introducción e instalación

2.- Exportación a android

Curso de facturación electrónica Colombia en C# .Net

En este curso te explico cómo puedes crear la factura electrónica de Colombia según lo establecido por el DIAN.

Todo el proceso esta explicado para la tecnología C# .Net.

El curso esta en proceso, si quieres estar informado de cuando publico los videos, te invito a que te suscribas a mi canal de youtube dando clic aquí.

1.- Generar clases a partir de XSD

Programación recursiva fácil explicada con 3 ejemplos, C# .Net, recorrido arreglos, suma, dibujar árbol

En este video te enseñare como se programa recursivamente, te mostrare 3 ejemplos con los cuales comprenderás esta forma de programar rápidamente.

Código fuente


using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Recursividad
{
    class Program
    {
        static void Main(string[] args)
        {
            //ejemplo 1: recorrer un arreglo
            int[] arregloDeEnteros = new int[] { 2,1,1,1,1,1,2};
            Recorrer(arregloDeEnteros);

            //ejemplo 2: sumar elementos de un arreglo
            int total = Sumar(arregloDeEnteros);

            //ejemplo 3: pintar un arbolito
            Bitmap bmp = new Bitmap(100,100);
            Pintar(bmp,bmp.Width/2,20);

            string path = @"C:\Users\Bioxor\source\repos\Recursividad\Recursividad\arbolito.jpg";
            bmp.Save(path,ImageFormat.Bmp);
        }

        static void Pintar(Bitmap bmp,int x, int n,int y=0)
        {
            if (y < n)
            {
                bmp.SetPixel(x, y, Color.Red);
                Pintar(bmp,x+1,n,y+1);
                Pintar(bmp,x-1,n,y+1);
            }
        }

        static int Sumar(int []arreglo,int posicion=0)
        {
            if (posicion == arreglo.Length)
                return 0;

            return arreglo[posicion] + Sumar(arreglo, posicion+1);
        }

        static void Recorrer(int [] arreglo,int posicion=0)
        {
            if (posicion == arreglo.Length)
                return;

            Console.WriteLine(arreglo[posicion]);
            Recorrer(arreglo,posicion+1);
        }

     

    }
}


¿Cómo obtener la diferencia en minutos de dos fechas en mysql? TIMESTAMPDIFF

Para obtener la diferencia en minutos de dos fechas en mysql existe la función TIMESTAMPDIFF la cual nos ayuda a realizar la resta.

Esta función también nos permite obtener otros valores como hora, días, segundos etc.

Se utiliza de la siguiente forma:


select TIMESTAMPDIFF(MINUTE,fechaInicial,fechaFinal) as minutos from MiTabla

¿Cómo utilizar un try y catch dentro de una consulta LINQ? Excepción | Exception C# VB .Net

Para poder cachar excepciones dentro de una consulta LINQ y poder manipular el error para que no truene la consulta en si misma debemos hacer uso de Lambda, esto es útil cuando nuestra base de datos puede presentar inconsistencias las cuales pueden ocasionar una excepción en ciertos casos, y podemos evitarlo de la siguiente forma:


EntityDB db= new EntityDB();
var lst = from d in db.tabla.ToList() //es importante hacerlo lista
                  select new TablaViewModel
                  {
                      id = d.id,
                      //campo es string por lo cual
                      //nuestra función delegada regresara igual string
                      campo = (new Func<string>(() => {
                                                            try {
                                                             // suponiendo que exista una referencia
                                                             // a una tabla secundaria la cual no siempre exista
                                                             // lo cual puede ocasionar una excepción
                                                             // de esta manera lo podemos manipular
                                                                 return d.tablaSecundaria.campo2;
                                                                 }
                                                            catch { return "No existe"; }
                                                        }
                                                  )
                                 )()
                  };

De esta manera nuestra consulta no tronara y podemos darle un resultado a la vista donde mostraremos nuestros datos.