Использование вложенных классов .NET

В MATLAB®, вы не можете непосредственно создать экземпляр вложенного класса, но вот как это сделать путем отражения. Следующий код C # определяет InnerClass вложенный в OuterClass:

namespace MyClassLibrary
{
  public class OuterClass
  {
      public class InnerClass
      {
          public String strmethod(String x)
          {
              return "from InnerClass " + x;
          }
       }
   }
}

Если на MyClassLibrary сборка в вашем c:\work папка, загрузка файла:

a = NET.addAssembly('C:\Work\MyClassLibrary.dll');
a.Classes
ans = 
    'MyClassLibrary.OuterClass'
    'MyClassLibrary.OuterClass+InnerClass'

Вызов strmethod, тип:

t = a.AssemblyHandle.GetType('MyClassLibrary.OuterClass+InnerClass');
sa = System.Activator.CreateInstance(t);
strmethod(sa,'hello')
ans = 
from InnerClass hello
Для просмотра документации необходимо авторизоваться на сайте