У меня есть веб-сервис WCF, который реализует параметр List<ICustomObject>.В сгенерированном клиентском коде параметр List<Object>?!?Как я могу заставить его принять List<ICustomObject>, как интерфейс, или мне нужно использовать конкретный класс?У меня есть конкретный класс, помеченный как [KnowType] и [Serializable]
List<ICustomObject>
List<Object>
[KnowType]
[Serializable]
Вы должны использовать конкретный класс, потому что вы должны установить DataMember и DataContract для его сериализации, а с интерфейсом вы не сможете этого сделать.
DataMember
DataContract
WCF работает со всем, что можно выразить в XML-схеме - интерфейсы как таковые не являются.
Вы должны определить свои списки как списки конкретных типов - иначе клиент не сможет знать, что делать со списком, и вернется к List<Object>.