передача пользовательского объекта вебсервису
От: Vovo4K Россия  
Дата: 01.09.04 13:21
Оценка:
ламерский (наверно) вопрос.

допустим, есть класс

Public Class some
    Public test As String
End Class


есть вебсервис со следующим методом:

<WebMethod()> _
Public Function hello(ByVal s As Object) As Object
    Return CType(s, test_class.some).test
End Function


и есть клиентское приложение со следующим методом:

Private Sub Button1_Click(...) Handles Button1.Click
    Dim ws As New localhost.Service1
    Dim s As New test_class.some
    s.test = "boom"
    TextBox1.Text = ws.hello(s)
End Sub


Получаю ошибку: "There was an error generating the XML document. ---> System.InvalidOperationException: The type test_class.some was not expected. Use the XmlInclude or SoapInclude attribute to specify types that are not known statically."

Вопросы стандартные: кто виноват и что делать.
Прописывание XmlInclude(GetType(test_class.some)) веб-методу ничего не дает, с SoapInclude — аналогично.
Прописывание Serializable и XmlType в объявлении класса — тоже.

Тот факт, что веб-метод принимает параметр типа Object — важен. Проблема возникла во вполне реальной задаче, приведенный выше код — он лишь для более понятной иллюстрации.

Что я упустил?

Заранее спасибо.
... << RSDN@Home 1.1.4 beta 2 >>
Компьютер — совершенно незаменимая вещь: он позволяет решать такие проблемы, которые без него даже не возникают!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.