Будет ли .NET Webservice сломаться, когда я добавлю свойство к параметру? - PullRequest
2 голосов
/ 20 января 2009

У меня есть .NET Webservice, в котором размещен метод AddMyObject.

[WebMethod]
public void AddMyObject(MyObject[] objects){...}

Где MyObject объявлен как

public class MyObject
{
    public string Pro1{get;set;}
    public string Pro2{get;set;}
}

Если я сейчас добавлю свойство в MyObject, клиент создаст новый прокси-сервер из нового WSDL и использует это свойство, сможет ли старый экземпляр Web-службы его обработать? Конечно, новое свойство будет null, но будет ли какое-то исключение?

Ответы [ 3 ]

1 голос
/ 20 января 2009

К счастью, я только что нашел время написать небольшой тестовый сервис для этой проблемы.

На самом деле происходит следующее: если свойство добавляется на стороне клиента, оно игнорируется в старой службе.

Даже если свойство удалено на стороне клиента, на сервере нет исключений: свойство просто null.

0 голосов
/ 20 января 2009

Хороший вопрос, +1 за это.

Я никогда не пробовал, но я бы сказал, что это, вероятно, будет работать Пожалуйста, сообщите нам результаты:)

0 голосов
/ 20 января 2009

Да, вообще не получится. Не обязательно на клиенте .NET (это довольно снисходительно), но другие клиенты потерпят неудачу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...