Показать сообщение отдельно
Старый 17.11.2016, 15:56   #1  
dech is offline
dech
Участник
Аватар для dech
Самостоятельные клиенты AX
 
650 / 352 (13) ++++++
Регистрация: 25.06.2009
Адрес: Омск
Записей в блоге: 3
.NET-сборка и выполнение на стороне сервера
Всем доброго дня.
Версия AX4.
Возникла проблема следующего плана. Не удается получить работающий код при переносе его с клиента на сервер.
Манипуляции провожу следующие:
  • Компилируем dll-библиотеку
  • Копируем ее в папку client\bin
  • Копируем ее же в папку server\DEV\bin (DEV - название инстанса)
  • Регистрируем с указанием библиотеки в папке server
  • Компилируем класс со свойством RunOn: CalledFrom - УРА! Работает!
  • Компилируем класс со свойством RunOn: Server - ошибка при запуске класса
Пример класса C#:
X++:
using System;
using System.Collections.Generic;
using System.Text;

namespace PPO.QC
{
    public class Service
    {
        protected int a;
        protected int b;

        public Service(int _a, int _b)
        {
            a = _a;
            b = _b;
        }

        public String hello(String name)
        {
            return "Hello, " + name;
        }

        public int summary()
        {
            return a + b;
        }
    }
}
Пример класса в AX:
X++:
public void test()
{
    PPO.QC.Service  svc;
    str             hello;
    int             summary;
    ;

    new InteropPermission(InteropKind::CLRInterop).assert();

    svc = new PPO.QC.Service(5, 7);
    hello = svc.hello("Denis");
    summary = svc.summary();

    CodeAccessPermission::revertAssert();

    info(hello);
    info(strfmt("The summary is %1", summary));
}
Подскажите, что делаю не так? Чего не хватает?
__________________
// no comments