2016-05-24 2 views
0

Я хочу использовать Nlua в моем проекте. Моя настройка проекта: У меня есть совместный проект, в котором я реализовал свою логику и несколько конкретных проектов на платформе, которые используют этот общий проект.Используйте класс C#, реализованный в совместном проекте с Nlua

Теперь я хочу использовать классы, определенные в этом общем проекте внутри функции lua, которую я выполняю с помощью Nlua. Проблема в том, что это не работает.

lua.DoString(@"import('Platformspecific_Project_AssemblyName', 'Platformspecific_Project_Namespace') SomceClass.StaticMethod()"); 

Это прекрасно работает. Но если теперь я хочу использовать класс, определенный в общем проекте, это не будет работать:

lua.DoString(@"import('Platformspecific_Project_Assembly','Shared_Project_Namespace') SomeSharedClass.StaticMethod()"); 

Ошибки я получаю:

Additional information: [string "chunk"]:1: attempt to index global 'SomeSharedClass' (a nil value) 

Из того, что я прочитал (я новый к lua, кстати) эта ошибка возникает, если я хочу что-то сделать с переменной до ее определения (потому что файлы lua анализируются от начала до конца, хотя я не об этом разбираюсь.)

Мой вопрос : Как я могу использовать методы и классы, определенные в совместном проекте с Nlua? Я довольно уверен, что у меня что-то не так с Assemblies, но, похоже, документации по этой теме мало.

Любая помощь приветствуется!

ответ

0

Поделиться проектом не создает сборку (.dll), вам необходимо использовать последнюю сборку.

Или вы также можете использовать PCL. В противном случае LoadAssembly от NLua потерпит неудачу

Спасибо.

Смежные вопросы