You can remove attributes [Serializable]from your classes, this should work without. POCOs do not require the attribute to be present; they are serialized as accurately as possible.
. , -, -?
, SOAP, , , :
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetDerivedClassObjectsResponse xmlns="http://tempuri.org/">
<GetDerivedClassObjectsResult>
<DerivedClass>
<Name>string</Name>
</DerivedClass>
<DerivedClass>
<Name>string</Name>
</DerivedClass>
</GetDerivedClassObjectsResult>
</GetDerivedClassObjectsResponse>
</soap:Body>
</soap:Envelope>
- Storm, :
<DerivedClass>
<Key>1</Key>
<IsModified>true</IsModified>
<IsNew>true</IsNew>
<IsDeleted>true</IsDeleted>
<Name>Test1</Name>
</DerivedClass>
" -" -.
2. - (service.asmx? wsdl), , , , :
<s:complexType name="DerivedClass">
<s:complexContent mixed="false">
<s:extension base="tns:BaseClass">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:complexType name="BaseClass">
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="Key" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="IsModified" type="s:boolean" />
<s:element minOccurs="1" maxOccurs="1" name="IsNew" type="s:boolean" />
<s:element minOccurs="1" maxOccurs="1" name="IsDeleted" type="s:boolean" />
</s:sequence>
</s:complexType>
, . .