Здравствуйте
Задача:
Необходимо создать User Task, в которой создать объект ICompositeObjectList и для последующей передачи значения в другую User Task.
Данный пример не работает:
1 SoureCode:
namespace JustTestCompositeObject
{
using System;
using System.Collections.Generic;
using Terrasoft.Common;
public class A : ICompositeObject
{
internal string test;
public bool TryGetValue(string key, Type valuetype, out object value) { value = default; return true; }
public bool TryGetValue<TValueType>(string key, out TValueType value) { value = default; return true; }
}
public class TestCompositeObjectList : List<A>, ICompositeObjectList<A>
{
void ISerializableObject.Serialize(DataWriter dataWriter) { }
void ISerializableObject.Deserialize(DataReader dataReader) { }
}
public class test
{
public static ICompositeObjectList<ICompositeObject> GnerateTestList()
{
TestCompositeObjectList list = new TestCompositeObjectList();
list.Add(new A { test = "test1" });
list.Add(new A { test = "test2" });
return list;
}
public static string PrintTest(ICompositeObjectList<ICompositeObject> list)
{
string output = "";
if (list == null)
{
output = "this collection is null";
}
foreach (A v in list)
{
output += v.test + " ";
}
return output;
}
}
}
UserTask1:
list = test.GnerateTestList();
return true;
, где list задан как тип: Serializable list of composite values
UserTask2:
output=test.PrintTest(list);
return true;
, где list имеет тип: Serializable list of composite values; output имеет тип: string
Процесс выглядит вот так:
На Auto-generated page выводится output из UserTask2
Конфигурация успешно компилируется.
Пробовал прописывать Usings на необходимый namespace в свойствах процесса, не работает...
Вещи типа:
не работают и не возвращаются значение
В Visual Studio все ок работает в конфигурации при передачи значений через процесс - нет.
Да, конечно, можно делать SerializeObject и просто передавать строки, но не хочется тратить ресурсы на лишнюю серилизацию, если можно сделать и без нее...
Пожалуйста подскажите как можно решить подобную задачу.