Ir al contenido principal

Cómo conectarse a Ethereum utilizando .NET (Nethereum)

Actualizado el
26 de noviembre de 2025

5 minutos de lectura

Resumen

Dotnet o .NET es muy popular para el desarrollo de aplicaciones de escritorio; la mayoría de las aplicaciones de escritorio de Windows se crean con .NET, y además contribuye en gran medida a la pila tecnológica de las aplicaciones web. En esta guía, veremos cómo podemos conectarnos a Ethereum utilizando .NET y Nethereum.

Requisitos previos

  • .NET Core SDK 3.1 instalado en tu sistema.
  • Editor de texto.
  • Un nodo de Ethereum.

¿Qué es .NET?

.NET es la alternativa de Microsoft a Java. .NET es un marco de trabajo global para desarrollar aplicaciones utilizando Visual Basic, C# y F#. Es de código abierto y ofrece una excelente compatibilidad multiplataforma; fue creado por Microsoft principalmente para desarrollar aplicaciones de Windows, pero ahora, gracias a la compatibilidad con diversos lenguajes de programación, se pueden desarrollar tanto aplicaciones web como aplicaciones basadas en formularios utilizando .NET, y mediante ASP.NET —una herramienta incluida en el marco de trabajo .NET— se pueden crear backends para aplicaciones web.

A continuación se enumeran algunas características del marco .NET:

  • Motor Common Language Runtime (CLR)
  • Interoperabilidad
  • Portabilidad
  • Biblioteca de clases base
  • Implementación simplificada
  • Independencia lingüística
  • Seguridad

Para lo que nos ocupa hoy, utilizaremos C# y Nethereum.

¿Qué es C# (C-Sharp)?

C# es un lenguaje de programación moderno y orientado a objetos; es de código abierto bajo la Fundación .NET, gestionada por Microsoft, donde los miembros de la comunidad contribuyen activamente a su desarrollo. C# se utiliza ampliamente en el desarrollo de aplicaciones de escritorio y videojuegos, aunque también puede emplearse para el desarrollo de aplicaciones móviles, realidad virtual, blockchain, etc. C# tiene sus raíces en C y está estrechamente relacionado con Java y C++. Es fácil de aprender y es uno de los lenguajes de programación más populares del mundo, con un enorme apoyo por parte de la comunidad.

Estas son algunas de las características más destacadas de C#:

  • El código C#, al ejecutarse, genera archivos ejecutables portátiles como .exe y .dll
  • Los métodos en C# no son virtuales por defecto.
  • Las clases se agrupan en espacios de nombres.
  • Los espacios de nombres de C# no guardan relación con los directorios.
  • Las variables de tipos de datos primitivos son muy útiles en C#.
  • Cuenta con características como «Propiedades» e «Indexadores».
  • Admite estructuras, directivas del preprocesador y sobrecarga de operadores.
  • Al ser un lenguaje .NET, permite la interoperabilidad entre lenguajes.

¿Qué es Nethereum?

Nethereum es la biblioteca de integración de .NET para Ethereum; simplifica el acceso y la interacción de los contratos inteligentes con los nodos de Ethereum. Es compatible con todos los principales sistemas operativos y se ha probado en dispositivos móviles, ordenadores de sobremesa, la nube, Xbox, HoloLens y Windows IoT. Nethereum es ideal para el desarrollo de Web3.

A continuación se enumeran algunas de las características más destacadas de Nethereum:

  • Compatibilidad con los métodos JSON RPC / IPC básicos de Ethereum.
  • Interacción simplificada con los contratos inteligentes.
  • Integración con Unity 3D.
  • Compatibilidad con la cartera HD
  • Cuenta con bibliotecas para los contratos estándar Token, ENS y Uport.
  • Ciclo de vida sencillo de la cuenta.
  • Dispone de funciones de codificación y decodificación de tipos de ABI a .NET.

Utilizaremos el paquete web3 de Nethereum para obtener el número del último bloque de la cadena de bloques de Ethereum.

Instalación de Nethereum

Nethereum requiere tener instalado .NET Core o .NET Framework (4.5.1 o superior). Vamos a instalar el SDK de .NET Core para que Nethereum funcione. Descarga e instala el SDK de .NET Core, versión 3.1, según tu sistema operativo. A continuación, ve a tu terminal o línea de comandos y escribe lo siguiente:

$ dotnet new console -o nethereumapp

Esto creará una nueva aplicación .NET en el directorio actual. Puedes darle cualquier nombre a tu aplicación (en este ejemplo, «nethereumapp»).

Ahora, accede al directorio de tu aplicación con el comando «cd».

$ cd nethereumapp

Añadir una referencia al paquete Nethereum.Web3

$ dotnet añadir paquete Nethereum.Web3

Esto puede tardar un rato. Una vez añadida la referencia del paquete, descarga o actualiza el paquete escribiendo lo siguiente.

$ dotnet restore

Si todo va bien, Nethereum se instalará en tu sistema junto con el paquete nethereum web3.

Configura tu punto de conexión de Ethereum en Quicknode

Para lo que nos ocupa hoy, podríamos utilizar prácticamente cualquier cliente de Ethereum, como Geth u OpenEthereum (antes conocido como Parity). Como eso resulta un poco complicado solo para consultar la altura del bloque, crearemos aquí una cuenta gratuita de Quicknode y generaremos fácilmente un punto de conexión de Ethereum. Puede ser una red de pruebas (como Sepolia o Goerli) o la red principal. Una vez que hayas creado tu punto de conexión gratuito de Ethereum, copia el punto de conexión de tu proveedor HTTP:

 

Captura de pantalla del punto de conexión de Quicknode para Ethereum

 

Lo vas a necesitar más adelante, así que cópialo y guárdalo.

Conexión con Ethereum

Ahora ve a la carpeta de tu aplicación .NET, abre el archivo Program.cs de C# en un editor de texto y modifica el código según el siguiente ejemplo.

using System;
using System.Threading.Tasks;
using Nethereum.Web3;

namespace nethereumapp
{
class Program
{
static void Main(string[] args)
{
GetBlockNumber().Wait();
}

static async Task GetBlockNumber()
{
var web3 = new Web3("ADD_YOUR_ETHEREUM_NODE_URL");
var latestBlockNumber = await web3.Eth.Blocks.GetBlockNumber.SendRequestAsync();
Console.WriteLine($"Latest Block Number is: {latestBlockNumber}");
}
}
}

Asegúrate de sustituir `ADD_YOUR_ETHEREUM_NODE_URL` por el proveedor HTTP indicado en la sección anterior.

Explicación del código anterior

Líneas 1-3: Se añaden los espacios de nombres necesarios.

Línea 5: Declaración del espacio de nombres de nuestra aplicación (que contendrá una colección de clases). 

Línea 7: Declaración de una clase llamada «Program».

Líneas 9-12: Se declara la clase «Main», que es el punto de entrada del programa en C# y define lo que hace la clase cuando se ejecuta. Se establece que la clase «Main» debe esperar a que se ejecute la clase «GetBlockNumber».

Línea 14: Declaración de una clase de tarea «GetBlockNumber»; las clases de tarea en C# se ejecutan de forma asíncrona.

Línea 16: Creación de una instancia de Web3 y configuración de la URL de nuestro nodo.

Línea 17: Mediante la API de Eth, podemos ejecutar la solicitud GetBlockNumber de forma asíncrona y almacenar el resultado en la variable «latestBlockNumber».

Línea 18: Imprimir el último número de bloque almacenado en «latestBlockNumber» con la cadena «El último número de bloque es:»

Ahora, para ejecutar tu aplicación, abre el terminal o el símbolo del sistema, ve a la carpeta de tu aplicación .NET y escribe lo siguiente.

$ dotnet run

Si todo va bien y el código se ejecuta correctamente, deberías ver un resultado como este:

Conclusión

Aquí hemos visto cómo podemos conectarnos a la red Ethereum creando una aplicación .NET en C# con Nethereum. Así que adelante, crea tus propios juegos y aplicaciones descentralizadas. Puedes consultar la documentación oficial de Nethereum para obtener más información sobre las diferentes funciones y casos de uso.

Suscríbete a nuestro boletín para recibir más artículos y guías sobre Ethereum. Si tienes algún comentario, no dudes en ponerte en contacto con nosotros a través de Twitter. Siempre puedes charlar con nosotros en nuestro servidor de la comunidad de Discord, donde encontrarás a algunos de los desarrolladores más geniales que jamás hayas conocido :)

Comparte esta guía