使用 configurationName
參數移除 WCF API
已移除 WCF 8 中接受 configurationName
參數或 endpointConfigurationName
參數的 WCF API。 這些 API 先前在 .NET Framework 中用來載入用戶端組態參數,例如組 Binding
態和 EndpointAddress
詳細數據。
導入的版本
WCF 用戶端 8.0 GA
先前的行為
拿掉的 API 先前已從 IntelliSense 建議中隱藏,不過,使用這些 API 的專案已成功編譯。 使用任何已移除的 API,在執行時間導致 PlatformNotSupportedException 。
新的行為
受影響的 API 已不存在。 如果您升級至 WCF 8 並重新編譯您的專案,它將會失敗。
中斷性變更的類型
此變更可能會影響來源相容性。
變更原因
受影響的 API 從未在 .NET 上實作,而且先前對這些 API 的任何呼叫都會導致運行時例外狀況。 因此,決定完全移除它們。
建議的動作
拿掉受影響 API 的任何使用方式。
如果您使用由 .NET Framework SDK 公用程式產生的 svcutil
WCF 用戶端,產生的用戶端將會有呼叫已移除之基類建構函式的建構函式。 基類會是 ClientBase<TChannel> 或 DuplexClientBase<TChannel>。 產生的建構函式在 .NET 上無法使用,因為它們會導致 PlatformNotSupportedException
擲回。
- 如果您是多目標 .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)