Etiqueta: c#

  • Tutorial Google APIs – Crear Proyecto en Google Cloud

    Aquí tienes la primera entrega del tutorial sobre el uso de las APIs de Google para acceder a Drive, Contactos y Documentos.

    Si quieres crer una cuenta y un proyecto para poder acceder a esos APIs de Google, lo primero es acceder a Google Cloud Platform y crear una cuenta, o mejor dicho, activarla con Google Cloud.

    Una vez que tengas la cuenta, tendrás que crear un proyecto y configurarlo para que pueda acceder a esas APIs.

    En este tutorial te explico paso a paso cómo hacerlo, y con un montón de capturas para que no te líes y yo no me olvide de contarte los paso, que todo hay que decirlo. 🙂

    Nota:
    Por ahora te voy dejar las capturas y en otra ocasión, si hace falta, te explico lo que cada captura significa.
    Es que quiero pasar a mostrarte el código para acceder al API de People (contactos) que ya lo tengo hecho tanto con C# como con Visual Basic.

    Figura 1. Crear un nuevo proyecto

     

    Figura 2.

     

    Figura 3.

     

    Figura 4.

     

    Figura 5.

     

    Figura 6. En la ficha G Suite están las de Docs API y drive API

     

    Figura 7. Tienes que elegir y habilitar una por una.

     

    Figura 8.

     

    Figura 9. Añadir más librerías (bibliotecas)

     

    Figura 10. Elige People API. No elijas Contacts API, que aparte de estar obsoleta, no vale para nada…

     

    Figura 11. Esta es la parte más importnte, sin la autorización OAuth no podrás acceder a nada.

     

    Figura 12. Siempre debe ser External

     

    Figura 13.

     

    Figura 14.

     

    Figura 15. Añadir las características que tu aplicación usará de cada API que has añadido.

     

    Figura 16.

     

    Figura 17.

    Nota:
    Los permisos debes ir probándolos a ver qué error te da, según lo que quieras hacer.
    Pero básicamente necesitas acceso de lectura, salvo que quieras modificar un contacto, un documento o algún fichero del Drive.

    Figura 18. No te olvides de darle a UPDATE ya que al estar tan abajo en la pantalla emergente ni se ve, y so no le das a Update, no se guardan los cambios.

     

    Figura 19.

     

    Figura 20.

     

    Figura 21. Aquí tienes que añadir los usuarios autorizados para que usen la aplicación. El máximo es 100 y una vez que aades uno, ya no lo puedes eliminar.

     

    Figura 22.

     

    Figura 23. Los tipos de credenciales que crearemos

     

    Figura 24.

     

    Figura 25. Estas so las APIs que usaremos con este proyecto.

     

    Figura 26. El tipo de aplicación que vamos a crear.

     

    Figura 27.

     

    Figura 28. Estas son las dos claves que necesitarás en tu código

     

    Figura 29.

     

    Figura 30.

     

    Figura 31. Si no hs copiado las credenciales de acceso, descarga el fichero .json y ahí las tienes.

     

     

    Pues esto es todo lo que debes saber para crear un proyecto.
    En la siguiente entrega voy a mostrarte el código de una aplicación de consola para acceder a los contactos (People API). Sí, en C# y en VB.

     

     

    Nos vemos.
    Guillermo

  • Tutorial para usar las APIs de Google con C# y Visual Basic

    Pues eso… que como yo me he encontrado con problemas a la hora de implementar las APIs de Google y de encontrar ejemplos (que de haberlos solo eran para C#), me he decido a escribir esta especie de tutorial para poder acceder a las siguientes APIs de Google: Drive, Docs y People. Es decir, poder manipular el contenido de Google Drive, los documentos y los contactos de Google que están asociados tu cuenta (o la cuenta que decidas usar) de GMail.

    Lo primero que necesitas (salvo que uses las que yo voy a crear para este tutorial) es crearte una cuenta en Google Cloud Platform, es gratuito al menos sino usas recursos que son de pago.
    La cuenta a usar será la que tengas ya de GMail o bien puedes crear una nueva cuenta y asociarla con Google Cloud.

    Cuandoi asocias una cuenta por primera vez, te darán una oferta de 300$ (US $) para que pruebes de forma gratuita los recursos de pago (siempre que no te pases de esos 300 dólares). Pero como te digo, para las cosas que te voy a explicar no te hace falta.

    Por ahora me voy a saltar el paso de crear tus propios poyectos en Google Cloud, eso lo dejaré para el final (salvo que cambie de opinión), lo que sí te digo es que si quieres utilizar los ejemplos que te voy a mostrar usando mis claves o las que yo indique en el código) antes debes decírmelo para poder añadir tu correo de GMail a los usuarios que pueden usar esas claves.

    Esto ultimo lo puedes hacer dejando un comentario en este mismo post y yo te agregaré, esto puede que no lo haga pasado unos meses, ya que solo quiero que la gente lo pruebe en este tiempo reciente, mientras publico los tutoriales. Y dejando, como mucho, unos tres meses de desde la publicación original, así que… si estás leyendo este tutorial después del 15 de marzo de 2021, es posible que o bien no admita más usuarios o simplemente que no lo siga «soportando», además de que hay un límite de 100 usuarios por proyecto, y si ya están esos usuarios registrados con la aplciación, es posible que, incluso antes del 15 de marzo del 2021 no pueda admitir más usuarios.

    Dicho esto, empecemos.

    Nota:
    Los ejemplos los voy a hacer con .NET 5.0.1 pero son válidos para .NET Framework v4.5 y superiores, .NET Standard y .NET Core.

    Crear un proyecto en C# o Visual Basic

    Crea un proyecto de consola para C# o VB y ve a Tools>NuGet Package Manager>Manage NuGet Packages for Solution… (en español es: Herramientas>Administrador de paquetes NuGet>Administrar paquetes NuGet para la solución…)

    Busca y añade los siguientes paquetes de NuGet (entre paréntesis te indico las versiones que estoy usando al escribir este tutorial):

    Nota:
    Los enlaces son por si quieres ir a la página de NuGet y descargarlas desde allí o ver cómo instalarlas según estés usando Visual Studio 2019 o Visual Studio Code o simplemente creando los proyectos desde la consola con dotnet.
    Eso sí, necesitarás tener instlado el SDK de dotnet 5 para poder compilar el código.

    Esto añadirá las referencias necesarias para usar el código que te mostraré.

    Nota:
    Si te interesa ver el código fuente de las APIs de google puedes verlas en el siguiente enlace: google-api-dotnet-client.

    Las entregas

    1. Entrega 1: Crear Proyecto en Google Cloud
    2. Entrega 2: Código para acceder a los contactos con People API
    3. Entrega 3: Código para acceder a los documentos con Drive API y Docs API
    4. Entrega 4: Código para crear un documento con Docs API

    Nota:
    Voy a publicar ahora este post mientras creo el protyecto de prueba, escribo el código, lo convierto de C# a VB (ya tengo código escrito en C#) y lo publico, así podrás solicitar tu «permiso» para usar estos ejemplos con mi ID y clave secreta (que después de publicarla no será tan secreta 😉 )

    Nos vemos.
    Guillermo

  • Simular discard de C# en Visual Basic

    Pues eso… haciendo pruebas con el conversor de C# a VB de Paul1956 comprobé que los discard de C# (asignación digamos que nula de una función o descartes según la traducción al español ) los generaba usando dos guiones bajo (undercore) y el «asistente» de VS indicó que creara una función para usar ese descarte. Y al ver que es válido usar el nombre __ (dos guiones bajos) como nombre de una función, pensé que también sería válido para una propiedad… de forma que se pudiese haccer ese tipo de asignación.

    Por ejemplo, si tenemos este código de C# en el que se «descarta» el valor devuelto por la función MostrarAyuda:

    class Program
    {
        static void Main(string[] args)
        {
            _ = MostrarAyuda(true, false);
    
            //Console.WriteLine(_);
    
            Console.WriteLine();
            Console.WriteLine("Pulsa una tecla para finalizar.");
            Console.ReadKey();
        }
    
        private static string MostrarAyuda(bool value1, bool value2)
        {
            var s = $"Valores: value1: {value1}, value2: {value2}";
            Console.WriteLine(s);
            return s;
        }
    }
    

    La conversión podría quedar de esta forma:

    Public Shared Sub Main(args As String())
        '__ = MostrarAyuda(True, False)
    
        __ = MostrarAyuda(True, False)
    
        Console.WriteLine(__)
    
        Console.WriteLine()
        Console.WriteLine("Pulsa una tecla para finalizar.")
        Console.ReadKey()
    End Sub
    
    Private Shared Property __ As Object
    
    Private Shared Function MostrarAyuda(value1 As Boolean, value2 As Boolean) As String
        Dim s = $"Valores: value1: {value1}, value2: {value2}"
        Console.WriteLine(s)
        Return s
    End Function
    

    Es un apaño, pero puede valer para equiparar los dos lenguajes.

    Nota:
    Fíjate que en VB al ser una propiedad válida la podemos usar como cualquier otra variable para mostrar el contenido.

    Y esto es todo… a ver si lo implementa y así no dará error cuando se convierta código de C# que tenga ese tipo de asignación (que la implementaron en C# 7.0)

    Nos vemos.
    Guillermo