最近在实现ASP.NET与MATLAB混合编译,几乎看遍了网络上所有同学们的解决方法,总体来说有两种实现方法。一种是利用MLApp.MLAppClass直接执行MATLAB。另一种是利用MATLAB自带的编译器MCR将.M文件编译为DLL文件,在ASP.NET中引用并且使用。
具体方法请参考MATLAB官网给出的一个例子,非常详尽的说明了第二种方法的正确使用方法。具体步骤就不细写了,只把最关键的代码留下,供大家学习。
http://cn.mathworks.com/support/2013a/dotnetbuilder/4.1.3/demos/using-builder-ne.html
1 //using rdupjr//我自己生成的一个dll,这里面有一个class名叫rduclass() 2 3 RduClass obj = null; 4 MWNumericArray input = null; 5 MWNumericArray output = null; 6 MWArray[] result = null; 7 8 try 9 { 10 obj = new RduClass(); 11 input = 25; 12 result = obj.rdu(1, input, input); 13 output = (MWNumericArray)result[0]; 14 Console.WriteLine(output); 15 Console.Read(); 16 17 } 18 catch (Exception) 19 { 20 21 throw; 22 }
利用这个方法,完全可以完成MATLAB到C#的各种数据的传递。参照这个原理,C#传递到MATLAB也就不是难事情了。
原文地址:http://www.cnblogs.com/bobyin/p/4506861.html
时间: 2024-11-05 16:02:45