[DllImport("mkl_rt", CallingConvention = CallingConvention.Cdecl,
ExactSpelling = true, SetLastError = false)]
internal static extern int djacobix(ref int fcn,
ref int n, ref int m, [Out] double fjac, [In] double x, ref double  jac_eps,
ref MathLib.Optimiser.my_data m_data);
Obviously, this is not working, since the fcn parameter is not passed correctly. Do I need to use a delegate?
Please check with this Article "http://software.intel.com/en-us/articles/using-intel-mkl-in-your-c-program/", You can find there several examples how to do that. In the case if you will experience the further problem, then please give us the example of your*.cs file.