Thank you very much for your response.
I'll ask you and others one more question which might be a little a bit off
the topic, but I have no other chice, since I have asked this on many
newsgroups and haven't received good answer. This is my case:
I'm writing webervice client using .Net 2.0. I have this class:
[System.Web.Services.WebServiceBindingAttribute(Name = "ValidateBinding",
Namespace = "
http://example.org/Avtentikacija")]
public class MyWebService : SoapHttpClientProtocol
{
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("", Use =
System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle =
System.Web.Services.Protocols.SoapParameterStyle.Bare)]
public XmlDocument validate(string url,
[System.Xml.Serialization.XmlElementAttribute(Namespace =
"
http://www.example.org/PodpisaniDokument")] XmlDocument xmlDocument)
{
this.Url = url;
object[] results = null;
try
{
// ERROR occur at this line

results = this.Invoke("validate", new object[] { xmlDocument });
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
return null;
}
return ((XmlDocument)(results[0]));
}
}
and I call it like this:
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.PreserveWhitespace = true;
xmlDocument.Load("C:\\request.xml");
MyWebService web = new MyWebService();
xmlDocument =
web.validate("
http://localhost:8080/MyWeb/services/Avtentikacija",
xmlDocument);
if (xmlDocument != null)
xmlDocument.Save("C:\\response.xml");
And I got this error message:
System.InvalidOperationException: There was an error generating the XML
document. ---> System.InvalidCastException: Unable to cast object of type
'System.Xml.XmlDocument' to type 'System.String'.
at
Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationWriterMyWebService.Write1_validate(Object[]
p)
at
Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfObjectSerializer.Serialize(Object
objectToSerialize, XmlSerializationWriter writer)
at System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,
Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String
id)
--- End of inner exception stack trace ---
at System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,
Object o, XmlSerializerNamespaces namespaces, String encodingStyle, String
id)
at System.Xml.Serialization.XmlSerializer.Serialize(XmlWriter xmlWriter,
Object o, XmlSerializerNamespaces namespaces, String encodingStyle)
at
System.Web.Services.Protocols.SoapHttpClientProtocol.Serialize(SoapClientMessage
message)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
methodName, Object[] parameters)
at MyWeb.MyWebService.validate(String url, XmlDocument xmlDocument) in
C:\Documents and Settings\I\My Documents\Visual Studio
2005\Projects\MyWeb\MyWeb\Form1.cs:line 152
Why?
Interesting is that the same code (Invloke() method) works fine for the auto
generated class from WSDL file by Visual Studio 2005. I've searched for
"string" operator, but there isn't any. I have also displayed ToString()
return value and it returns something like
"SomeNamespace.SomeAutoGeneratedClass". I was expection to see whole XML. I
don't know how .Net code casts those auto generated classes???
This is peace of auto generated class:
[System.Xml.Serialization.XmlRoot("PodpisaniDokument",
Namespace="
http://www.example.org/PodpisaniDokument")]
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml",
"2.0.50727.42")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(Namespace="
http://www.example.org/PodpisaniDokument")]
public partial class PodpisaniDokumentTip {
}