I've recently learned several methods for exporting a C# DLL for use outside .NET and specifically to Metatrader. The first method was alluded to in the article:
Write CSharp (C#) DLL for Metatrader.
This is a template created to make things simpler.
C# Project Template for Unmanaged Exports
The template method works but you have to delete the default function and use a slightly different syntax. (see next post).
I've seen two other articles that I haven't yet had time to fully explore but that I've heard work for simplifying the export of a C# DLL.
Simple Method of DLL Export without C++/CLI
How to Automate Exporting .NET Function to Unmanaged Programs
This second article looks not too difficult and I've heard good feedback on its implementation.