C#:MWArray并获得类实例

时间:2013-09-26 12:30:20

标签: c# .net matlab matlab-compiler

使用MATLAB编译器运行时(mcr)我已经创建了选择FrameWork 4.0版的熵.d的dll。我已将此dll添加到c#引用中。此外,我必须添加MWArray.dll来创建方法所需的参数。

        >     public class Entropy : IDisposable
        >      {
        >          //Constructors,Finalize,Methods,Class Members are located here.
        >      }
        >      using com.Entropy;
        >      using MathWorks.MATLAB.NET.Arrays;
        >      using MathWorks.MATLAB.NET.Utility;

这是我的问题。我试图获得像

这样的Entropy类的实例
 Entropy ep = new Entroyp(); 

然而它引发了一个例外:

> The type initializer for 'com.Enthropy.Enthropy threw an exception.

此外,当我尝试创建MWNumericArray时,它会抛出相同的异常。我试图将我的项目的框架版本更改为4.0,但它没有用。这个错误的原因是什么?

此外,我查看了下面的链接。

ACCESSING MATLAB FUNCTIONS FROM C#.NET

Using MATLAB Builder NE

Is there an example of using the "MWArray" data type in a .NET language such as C# with a MATLAB Builder for .NET component?

1 个答案:

答案 0 :(得分:1)

好。安装MCR后,我在开始时就完成了所有工作。创建了entropy.m的dll。然后我打开了我的项目的早期版本,我的意思是我删除了添加的引用; MWArray.dll和Entropy.dll。之后我将这些引用添加到我的项目中。现在它工作正常。

重点: 1)在创建任何MatLab函数 INSTALL MCR 的dll文件之前。 2)创建DLL时尝试为类和项目指定不同的名称。我的意思是,如果您创建名称为Entropy.prj的项目,请不要将您的类名创建为Entropy。 3)不要忘记将MWArray.dll添加到您的项目中。它的位置是

  

(..// Program Files(x86)// MATLAB \ MATLAB CompilerRuntime \ v81 \ toolbox \ dotnetbuilder \ bin \ win32 \ v2.0)