Edge.js es una innovadora (y curiosa) biblioteca que permite ejecutar código .NET desde Node.js y viceversa, facilitando la integración entre estas dos tecnologías populares.
Edge.js combina lo mejor de ambos mundos, permitiendo a los desarrolladores utilizar bibliotecas y componentes de .NET en aplicaciones Node.js y viceversa.
Esta integración, además de un engendro y una abominación de la naturales 😅 es útil en escenarios donde las aplicaciones requieren características de uno de los lenguajes, que no está fácilmente disponible en la otra.
Principales características,
- Interoperabilidad: Ejecuta código .NET desde Node.js y código Node.js desde .NET.
- Compatibilidad: Soporta .NET Core y .NET Framework.
- Facilidad de Uso: API simple y fácil de usar para integrar ambas tecnologías.
- Rendimiento: Aprovecha el rendimiento nativo de .NET y la eficiencia de Node.js.
Para más información y detalles sobre cómo utilizar Edge.js, visita el repositorio en GitHub. Aquí encontrarás documentación adicional, ejemplos de uso y actualizaciones sobre esta herramienta.
Instalación
Instalación de Edge.js en Nodejs
Instala Edge.js usando npm:
npm install edge-js
Instalación de Edge.Js en .NET
Instala Edge.js usando nuget:
Install-Package EdgeJs
Uso de Edge.js
Ejecutar Código C# desde Node.js
Una de las características principales de Edge.js es la capacidad de ejecutar código C# desde Node.js. A continuación, se muestra un ejemplo de cómo lograr esto.
Crea un archivo app.js
con el siguiente contenido:
const edge = require('edge-js');
const helloWorld = edge.func(function () {/*
async (input) => {
return ".NET welcomes " + input.ToString();
}
*/});
helloWorld('Node.js', function (error, result) {
if (error) throw error;
console.log(result);
});
Ejecuta el script desde la línea de comandos:
node app.js
Deberías ver la salida: .NET welcomes Node.js
Ejecutar Código Node.js desde .NET
Edge.js también permite ejecutar código Node.js desde una aplicación .NET. Aquí hay un ejemplo de cómo hacerlo:
Crea un nuevo proyecto .NET y agrega Edge.js como una dependencia:
dotnet new console -n EdgeJsExample
cd EdgeJsExample
Escribir Código .NET para Ejecutar Node.js
using System;
using System.Threading.Tasks;
using EdgeJs;
class Program
{
public static async Task Start()
{
var func = Edge.Func(@"
return function (data, callback) {
callback(null, 'Node.js welcomes ' + data);
}
");
Console.WriteLine(await func(".NET"));
}
static void Main(string[] args)
{
Start().Wait();
}
}
Ejecuta el proyecto .NET desde la línea de comandos:
dotnet run