ChannelServices 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供靜態方法以協助遠端通道註冊、解析及 URL 發現。 無法繼承這個類別。
public ref class ChannelServices sealed
public sealed class ChannelServices
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ChannelServices
type ChannelServices = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type ChannelServices = class
Public NotInheritable Class ChannelServices
- 繼承
-
ChannelServices
- 屬性
備註
通道在應用程式間跨越遠端邊界(如應用域、程序與電腦)傳遞訊息。 這些過境點可以是進站和出站。 通道可以在端點監聽入站訊息,或傳送到端點接收出站訊息,或兩者兼具。 這在執行時提供了一個可擴充的點,可以插入各種協定,即使執行時可能不在通道的另一端。 執行時物件可用來揭露廣泛的語意與實體。 通道提供擴充點,用於將訊息與特定協定之間轉換。
通道必須暴露介面 IChannel ,該介面提供資訊性質,如 和 ChannelNameChannelPriority。 通道是透過此 ChannelServices.RegisterChannel 方法註冊的。 通道也可以從遠端配置載入。 (詳情請參見 <頻道> 元素(範本) 。)
在用戶端,訊息在客戶端通道匯線(sink chain)經過後 Context 會交接給客戶端通道匯(sink chain)。 第一個通道匯通常 IClientFormatterSink為 ,將訊息序列化成串流,並沿通道匯鏈傳遞至用戶端傳輸匯。 客戶端傳輸匯接著將這條串流寫入線路。
在伺服器端,伺服器傳輸匯會讀取線上請求,並將請求串流傳遞給伺服器通道匯流鏈。 這條鏈末端的伺服器格式化器匯入會將請求反序列化成訊息。 接著它會將訊息交給遠端通訊基礎設施,再由其派遣到伺服器 Context 鏈。
屬性
| 名稱 | Description |
|---|---|
| RegisteredChannels |
會獲得目前註冊頻道的清單。 |
方法
| 名稱 | Description |
|---|---|
| AsyncDispatchMessage(IMessage, IMessageSink) |
非同步地根據訊息中嵌入的 URI 將訊息發送到伺服器端鏈。 |
| CreateServerChannelSinkChain(IServerChannelSinkProvider, IChannelReceiver) |
為指定的通道建立一條通道匯鏈。 |
| DispatchMessage(IServerChannelSinkStack, IMessage, IMessage) |
調度來電。 |
| Equals(Object) |
判斷指定的 物件是否等於目前的物件。 (繼承來源 Object) |
| GetChannel(String) |
回傳一個指定名稱的註冊頻道。 |
| GetChannelSinkProperties(Object) |
回傳給定代理的屬性 a IDictionary 。 |
| GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
| GetType() |
取得目前實例的 Type。 (繼承來源 Object) |
| GetUrlsForObject(MarshalByRefObject) |
回傳一個包含所有可用來存取指定物件的 URL 陣列。 |
| MemberwiseClone() |
建立目前 Object的淺層複本。 (繼承來源 Object) |
| RegisterChannel(IChannel, Boolean) |
向頻道服務註冊一個頻道。 |
| RegisterChannel(IChannel) |
已淘汰.
向頻道服務註冊一個頻道。 RegisterChannel(IChannel) 已經過時。 請改用 RegisterChannel(IChannel, Boolean)。 |
| SyncDispatchMessage(IMessage) |
根據訊息中嵌入的 URI,同步派遣收到的訊息到伺服器端鏈。 |
| ToString() |
傳回表示目前 物件的字串。 (繼承來源 Object) |
| UnregisterChannel(IChannel) |
將特定頻道從註冊頻道列表中移除註冊。 |