Article Image
read

Today I have decided to try out Edge.js, which allows to run .NET and Node.js code in-process. It's a great and very clever idea, we can reuse existing .NET class libraries in Node.js packages or applications. So I have created a small test project in Node.js to try out how can I call a C# class library's method.

To test it out I grab one of my old C# class, a Fibonacci series calculator. I've wrote this simple class for a programming challenge at my previous workplace, basically it allows to query for Fibonacci numbers using Linq. The task was to find out the n th term with 2012 digits, and with my implementation I was able to query Fibonacci terms in the following simple way:

Fibonacci().First(x => x.Digits == 2012);

It seemed a good candidate to test Edge.js, so I modified my C# class a bit then compiled to dll.

editing the C# part with Xamarin Studio (my new favourite IDE for .NET projects)

On the other hand the Node.js part is also fairly simple:

editing the Node.js part with Sublime Text 2 (still the best editor in my opinion)

And here is the output of the Node.js app, using my compiled C# class library with Edge.js:

$ npm start

First Fibonacci term with 2012 digits: 9625th

This small test project is available here, on GitHub of course. ;)

Blog Logo

Kalman Speier


Published

Image

Kalman Speier

Logbook of my journey in software development.

Back to Overview