Изменение сигнатур RegisterExternalOperation и CallExternalOperation в API V10

Теги: v10preview1 v10

Начиная с API V10Preview1 у RegisterExternalOperation<TRequest, TResponse> и CallExternalOperation<TRequest, TResponse> (подробности) из сигнатуры удалены SerializationBinder и ISurrogateSelector в связи с заменой сериализатора на кроссплатформенный вариант.

В методы теперь можно передать список IReadOnlyCollection<Type> knownTypes для поддержки полиморфной (де)сериализации. Пример использования можно посмотреть в SamplePlugin. Также плагин может использовать альтернативные перегрузки RegisterExternalOperation и CallExternalOperation (с массивом байт в качестве параметров), самостоятельно реализовав логику (де)сериализации.