Z
Ich habe eine serialisierbare Klasse:
System::CodeDom::Compiler::GeneratedCodeAttribute(L"xsd", L"2.0.50727.42"),
System::SerializableAttribute,
System::Diagnostics::DebuggerStepThroughAttribute,
System::ComponentModel::DesignerCategoryAttribute(L"code"),
System::Xml::Serialization::XmlTypeAttribute(AnonymousType=true),
System::Xml::Serialization::XmlRootAttribute(Namespace=L"http:...", IsNullable=false)]
public ref class Response {
private: Header^ head;
private: int number;
/// <remarks/>
public: property Header^ Time {
Header^ get();
System::Void set(Header^ value);
}
};
[Serializable...
...]
public ref class Header {
private: String^ time;
get/set...
}
Ich rufe per ASP.Net [WebMethod] den Service auf und erhalte als Return meine Response-Klasse. Klappt alles einwandfrei.
Dann leite ich von der Header-Klasse ab, füge neues Element dazu:
public ref class MyHeader : public Header{
public:
String^ name;
};
[WebMethod]
Response^ getMethod() {
Response^ my = gcnew Response();
MyHeader^ myH = gcnew MyHeader();
myH->Name = "hans";
my->time = "1400";
...
return response;
}
Danach kommt bei Abruf des Service als Response: The type <namespace>.MyHeader was not expected...".
Ich will im Grunde die eigentliche Header Klasse zurückgeben und die abgeleitete Klasse nur für interne Zwecke noch weiter befüllen.
Lösung?