Я сделал простой демонстрационный пример PasteBin о том, как выглядит мой код: http://pastebin.com/GpDhPRVm
Мой фактический Process
объект чрезвычайно сложен и включает в себя добавление коллекций задач, документов, рабочих процессов и т. Д. В объект Process
и настройку свойств с помощью методов и т. Д.
Мой Пример PasteBin настолько прост, насколько я могу сделать, чтобы показать, где что-то сломалось. Включение объекта Process
в метод CreateNewProcess
в моем сервисе (показано в коде ниже) позволяет пользователю сервиса автоматически «видеть» объект, свойства и перечислители Process
в их экземпляре на стороне клиента.
<ServiceContract()>
Public Interface ICreateProcess
<OperationContract()>
Sub CreateNewProcess(ByVal newprocess As Process)
End Interface
Тем не менее, он не позволяет им использовать какие-либо методы, такие как метод AddTask (, показанный в примере PasteBin ), и также не предоставляет объекты Task
или TaskCollection
. , Даже если я декорирую методы с помощью DataContract
, OperationContract
и т. Д., Они все равно не видны клиентской службе.
Это моя основная проблема: Мне нужна клиентская служба, чтобы иметь возможность полностью "построить" объект Process
и затем передать его методу CreateNewProcess
.
Еще одно небольшое замечание: (во избежание комментариев, спрашивающих меня об этом), я убедился, что все мои свойства являются простыми типами, которые могут взаимодействовать, так как это должно быть в состоянии работать для Java - не просто .NET клиенты.