Экземпляр gSOAP службы.NET

У меня есть клиент Linux C++ (через gSOAP) для сервера WCF C#. Служба WCF C# содержит список объектов, над которыми выполняется какое-либо действие. Каждый раз, когда я вызываю какую-либо функцию в сервисе, создается новый объект, выполняется действие над этим объектом, и этот объект попадает в список в сервисе. в конце я вызываю другую функцию в сервисе, которая перебирает все объекты в списке и выполняет другой вызов для них. это работает, как и предполагалось на C#, как с клиентом, так и с сервисом чистого WCF.

он работает по-другому через gSOAP. каждый раз, когда я вызываю первую функцию в службе через gSOAP, это действие выполняется и список обновляется. но это каждый раз новый сервис. так что в основном я имею дело каждый раз с новым сервисом. я не буду сериализовывать / десериализовывать сам объект, чтобы он был на стороне inux.

есть идеи как это решить?

на стороне C# у меня что-то вроде (ненужные детали пропущены)

    Класс Сервис: IService
    {
        Список список = новый список ();
        void func1(int i)
        {
           Class1 c = новый Class1(i);
           c.create();
           list.Add(с);
        }
        void func2()
        {
           foreach(Class1 c в списке)
           {
               c.close();
           }
        }
    }

на стороне gSOAP у меня есть что-то вроде

    Прокси-сервис (конечная точка);
    service.func1(1);
    service.func1(2);
    //...
    service.func2();

Как я уже сказал, проблема в том, что при выполнении func2 () он работает с пустым списком, то есть объект gSOAP службы Proxy не содержит объект службы C#.

Помогите помогите!

пс. Решение найдено: контейнер, сделанный "статичным", делает свое дело.

0 ответов

Другие вопросы по тегам