[XmlInclude(typeof(car))]
public class car
{
public car()
{
}
public string petName;
public int maxSped;
public int EchoString()
{
return 10;
}
}
При передаче этого класса через веб сервис на клиенте видны переменные этого класса (все как и должно быть), но метод EchoString отсутствует. Почему и как сделать так чтобы он был?
Здравствуйте, Mr Muskul, Вы писали:
MM>При передаче этого класса через веб сервис на клиенте видны переменные этого класса (все как и должно быть), но метод EchoString отсутствует. Почему и как сделать так чтобы он был?
Здравствуйте, mogadanez, Вы писали:
M>как ты себе это пердставляешь?
Например в веб сервисе http://www.rsdn.ru/ws/Janus.asmx
есть такой класс JanusSvc() в котором помимо свойств класса присутствуют еще и методы new JanusSvc().SyncGetTopic(...). Знач такое можно заделать, тока вопрос как???
MM>При передаче этого класса через веб сервис на клиенте видны переменные этого класса (все как и должно быть), но метод EchoString отсутствует. Почему и как сделать так чтобы он был?
Никак. Веб-сервис предполагает только передачу данных (и их структуры), но никак не вызов методов. Плюс ещё выбрасывания Exception, но это тоже просто данные. Поэтому все возможные инициализации класса, конструкторы с параметрами, и просто методы отбрасываются. Передаётся ТОЛЬКО СТРУКТУРА класса и создаётся пустой конструктор по умолчанию. Это не RPC и не COM. Хотите вызывать методы — используйте одну из этих технологий.
Повреждение мозга после ректальной биопсии — редкая штука (с) Хаус
передача класса через веб сервис
От:
Аноним
Дата:
15.09.04 11:07
Оценка:
просто теоретический вопрос — а как лично вы себе представляете "передачу метода"? метод на то и метод, что он не обязан вообще ничего возвращать, а может и изменить состояние объекта при его вызове, потому сериализатор их и не трогает. Используйте свойства
Здравствуйте, Mr Muskul, Вы писали:
MM>При передаче этого класса через веб сервис на клиенте видны переменные этого класса (все как и должно быть), но метод EchoString отсутствует. Почему и как сделать так чтобы он был?