Удаление API WCF с параметром configurationName
API WCF, принимаюющие configurationName
параметр или endpointConfigurationName
параметр, были удалены в WCF 8. Эти API ранее использовались в платформа .NET Framework для загрузки параметров конфигурации клиента, таких как Binding
конфигурация и EndpointAddress
сведения.
Представленные версии
Клиент WCF 8.0 GA
Прежнее поведение
Удаленные API ранее были отключены из предложений IntelliSense, однако проекты, которые использовали их успешно скомпилированы. Использование любого из удаленных API привело к PlatformNotSupportedException выполнению во время выполнения.
Новое поведение
Затронутые API больше не существуют. При обновлении до WCF 8 и повторной компиляции проекта произойдет сбой.
Тип критического изменения
Это изменение может повлиять на совместимость исходного кода.
Причина изменения
Затронутые API никогда не были реализованы в .NET, и все вызовы этих API ранее привели к исключению во время выполнения. Таким образом, было принято решение полностью удалить их.
Рекомендуемое действие
Удалите любое использование затронутых API.
Если вы используете клиент WCF, созданный svcutil
программой из пакета SDK платформа .NET Framework, созданный клиент будет иметь конструкторы, вызывающие конструкторы базового класса, которые были удалены. Базовый класс будет либо ClientBase<TChannel> DuplexClientBase<TChannel>. Созданные конструкторы были непригодными для PlatformNotSupportedException
использования в .NET, так как они вызвали создание.
- Если вы используете многоцелевой платформа .NET Framework и .NET и по-прежнему используете эти созданные конструкторы в платформа .NET Framework, вам потребуется условно скомпилировать их использование.
- Если вы не используете эти конструкторы, их можно удалить из созданного кода. Кроме того, рекомендуется повторно создать клиент с помощью
dotnet-svcutil
.
Затронутые API
- NetHttpBinding(String)
- NetTcpBinding(String)
- System.ServiceModel.ChannelFactory.ApplyConfiguration(String)
- System.ServiceModel.ChannelFactory.InitializeEndpoint(String, EndpointAddress)
- ChannelFactory<TChannel>(String)
- ChannelFactory<TChannel>(String, EndpointAddress)
- DuplexChannelFactory<TChannel>(InstanceContext, String)
- DuplexChannelFactory<TChannel>(InstanceContext, String, EndpointAddress)
- DuplexClientBase<TChannel>(InstanceContext, String)
- DuplexClientBase<TChannel>(InstanceContext, String, EndpointAddress)
- DuplexClientBase<TChannel>(InstanceContext, String, String)