У меня есть class MyClass
, содержащий private List<MySecondClass> myList
. Список выставляется через геттер следующим образом:
public IEnumerable<MySecondClass> MyList
{
get { return myList.Select(a => a); }
}
Список изменяется с помощью открытых AddItem(MySecondClass itemToAdd)
и ClearItems()
методов. Я считаю, что это правильно составленный список.
Проблема заключается в том, что мне нужно передать объект типа MyClass
(содержащий myList
) через SOAP в веб-службу, которая заполняет myList (используя метод AddItem()
), а затем возвращает объект.
Однако, когда веб-метод возвращает класс, после сериализации myList становится пустым. Я подозреваю, что это потому, что у меня нет установщика для myList, что приводит к тому, что список не будет установлен во время сериализации.
Это хорошее предположение или я ухожу? Если проблема в том, что я думаю, то есть ли способ разрешить успешную передачу списка из веб-метода, не нарушая инкапсуляцию (я не хочу раскрывать общий список)?