Мне было бы любопытно, если бы кто-то мог обрисовать, какие типы изменений контракта (интерфейса) WCF на стороне сервера сломали бы клиент, пытающийся отправить сообщение, и почему. Я считаю, что WCF может справиться с некоторыми несоответствиями, но я не уверен, что именно вы можете изменить безопасно, а что нет.
- Добавить / удалить параметры из OperationContract?
- Добавить / удалить / изменить сериализованные свойства DataContract?
- Добавить / удалить OperationContracts из ServiceContract?
Друг задал подобный вопрос здесь:
Разрывает ли добавление метода к WCF ServiceContract существующих клиентов?
РЕДАКТИРОВАТЬ: Как отметил Джон Сондерс, изменение контракта обычно не является хорошей идеей, но есть встроенные вещи, которые допускают некоторую устойчивость к версии (ExtensionDataObject и т. Д.?). Я просто хотел бы знать, насколько гибок допуск к версии.