語言

ChannelFactoryBase<TChannel> 類別

定義

提供用戶端上通道處理站的通用基底實作,以建立連線至指定位址之指定型別的通道。

generic <typename TChannel>
public ref class ChannelFactoryBase abstract : System::ServiceModel::Channels::ChannelFactoryBase, System::ServiceModel::Channels::IChannelFactory<TChannel>
public abstract class ChannelFactoryBase<TChannel> : System.ServiceModel.Channels.ChannelFactoryBase, System.ServiceModel.Channels.IChannelFactory<TChannel>
type ChannelFactoryBase<'Channel> = class
    inherit ChannelFactoryBase
    interface IChannelFactory<'Channel>
    interface IChannelFactory
    interface ICommunicationObject
type ChannelFactoryBase<'Channel> = class
    inherit ChannelFactoryBase
    interface IChannelFactory
    interface ICommunicationObject
    interface IChannelFactory<'Channel>
Public MustInherit Class ChannelFactoryBase(Of TChannel)
Inherits ChannelFactoryBase
Implements IChannelFactory(Of TChannel)

類型參數

TChannel

工廠生產的渠道類型。

繼承
衍生
實作

備註

用戶端頻道工廠所建立的頻道會被頻道監聽者接受到伺服器。 一旦用戶端與服務建立通道連線,即可透過交換訊息進行通訊。

該 CreateChannel 位址作為發出訊息的目的地。 ServiceAddress.Uri 屬性作為訊息中的 To 標頭。 ServiceReference.Via 屬性被用作傳送訊息的實體目的地。 這通常與 ServiceAddress.Uri 值相同。

建構函式

名稱 Description
ChannelFactoryBase<TChannel>()

初始化 ChannelFactoryBase<TChannel> 類別的新執行個體。

ChannelFactoryBase<TChannel>(IDefaultCommunicationTimeouts)

初始化一個新實例, ChannelFactoryBase<TChannel> 並指定預設通訊逾時。

屬性

名稱 Description
DefaultCloseTimeout

取得預設的近距離操作完成時間間隔。

(繼承來源 ChannelFactoryBase)
DefaultOpenTimeout

取得預設的開放操作完成時間間隔。

(繼承來源 ChannelFactoryBase)
DefaultReceiveTimeout

取得接收操作完成的預設時間間隔。

(繼承來源 ChannelFactoryBase)
DefaultSendTimeout

取得預設的傳送操作完成時間間隔。

(繼承來源 ChannelFactoryBase)
IsDisposed

會得到一個值,表示通訊物件是否已被處置。

(繼承來源 CommunicationObject)
State

會得到一個表示通訊物件當前狀態的值。

(繼承來源 CommunicationObject)
ThisLock

取得互斥鎖,保護類別實例在狀態轉換期間。

(繼承來源 CommunicationObject)

方法

名稱 Description
Abort()

會使通訊物件立即從當前狀態轉換到關閉狀態。

(繼承來源 CommunicationObject)
BeginClose(AsyncCallback, Object)

開始異步操作以關閉通訊物件。

(繼承來源 CommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

開始異步操作,以關閉具有指定逾時的通訊物件。

(繼承來源 CommunicationObject)
BeginOpen(AsyncCallback, Object)

開始異步操作以開啟通訊物件。

(繼承來源 CommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

開始異步操作,以在指定的時間間隔內開啟通訊物件。

(繼承來源 CommunicationObject)
Close()

使通訊物件從其目前狀態轉換成已關閉狀態。

(繼承來源 CommunicationObject)
Close(TimeSpan)

使通訊物件在指定時間間隔內從當前狀態轉換到封閉狀態。

(繼承來源 CommunicationObject)
CreateChannel(EndpointAddress, Uri)

建立特定類型的通道,並指定傳輸與端點位址。

CreateChannel(EndpointAddress)

建立特定類型的通道,並指定端點位址。

EndClose(IAsyncResult)

完成異步操作以關閉通訊物件。

(繼承來源 CommunicationObject)
EndOpen(IAsyncResult)

完成異步操作以開啟通訊物件。

(繼承來源 CommunicationObject)
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
Fault()

會使通訊物件從當前狀態轉換到故障狀態。

(繼承來源 CommunicationObject)
GetCommunicationObjectType()

取得通訊對象的類型。

(繼承來源 CommunicationObject)
GetHashCode()

做為預設哈希函式。

(繼承來源 Object)
GetProperty<T>()

回傳一個從通道堆疊中適當層請求的類型物件(若存在)。

(繼承來源 ChannelFactoryBase)
GetType()

取得目前實例的 Type。

(繼承來源 Object)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
OnAbort()

中止由通道工廠管理的每個頻道。

OnBeginClose(TimeSpan, AsyncCallback, Object)

開始非同步操作,在指定時間內關閉所有與通道工廠相關的通道。

OnBeginOpen(TimeSpan, AsyncCallback, Object)

在通訊物件因呼叫非同步開啟操作而轉換至開啟狀態後,插入處理。

(繼承來源 CommunicationObject)
OnClose(TimeSpan)

在指定時間內關閉所有與通道工廠相關的通道。

OnClosed()

在通訊物件轉換到關閉狀態時被呼叫。

(繼承來源 CommunicationObject)
OnClosing()

在通訊物件轉換到關閉狀態時被呼叫。

(繼承來源 CommunicationObject)
OnCreateChannel(EndpointAddress, Uri)

當實作於衍生類別時,會在建立通道時提供可擴充性點。

OnEndClose(IAsyncResult)

完成非同步操作,在指定時間內關閉所有與通道工廠相關的通道。

OnEndOpen(IAsyncResult)

完成對通訊物件開啟的非同步操作。

(繼承來源 CommunicationObject)
OnFaulted()

在通訊物件因呼叫同步故障操作而轉換到故障狀態後,插入處理程序。

(繼承來源 CommunicationObject)
OnOpen(TimeSpan)

在通訊物件轉換進入開啟狀態後插入處理,該狀態必須在指定時間內完成。

(繼承來源 CommunicationObject)
OnOpened()

在通訊物件轉換到開啟狀態時被呼叫。

(繼承來源 CommunicationObject)
OnOpening()

在通訊物件轉換到開啟狀態時被呼叫。

(繼承來源 CommunicationObject)
Open()

使通訊物件從已建立的狀態轉換成開啟的狀態。

(繼承來源 CommunicationObject)
Open(TimeSpan)

使通訊物件在指定的時間間隔內,從建立的狀態轉換成開啟的狀態。

(繼承來源 CommunicationObject)
ThrowIfDisposed()

若通訊物件被丟棄,則拋出例外。

(繼承來源 CommunicationObject)
ThrowIfDisposedOrImmutable()

如果通訊物件 該 State 屬性未設定為 Created 狀態,則會拋出例外。

(繼承來源 CommunicationObject)
ThrowIfDisposedOrNotOpen()

如果通訊物件不在該 Opened 狀態,會拋出例外。

(繼承來源 CommunicationObject)
ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)
ValidateCreateChannel()

確認通道工廠已開啟,準備建立通道。

事件

名稱 Description
Closed

當通訊物件轉換到封閉狀態時,會發生這種情況。

(繼承來源 CommunicationObject)
Closing

當通訊物件轉換到關閉狀態時,會發生這種情況。

(繼承來源 CommunicationObject)
Faulted

當通訊物件轉換到錯誤狀態時,會發生這種情況。

(繼承來源 CommunicationObject)
Opened

當通訊物件轉換進入開啟狀態時,會發生這種情況。

(繼承來源 CommunicationObject)
Opening

當通訊物件轉換到開啟狀態時,會發生這種情況。

(繼承來源 CommunicationObject)

明確介面實作

名稱 Description
IDefaultCommunicationTimeouts.CloseTimeout

取得通訊物件呼叫的接近方法逾時結束的時間區間。

(繼承來源 ChannelManagerBase)
IDefaultCommunicationTimeouts.OpenTimeout

取得一個時間間隔,當通訊物件呼叫開啟方法時,該方法會逾時結束。

(繼承來源 ChannelManagerBase)
IDefaultCommunicationTimeouts.ReceiveTimeout

取得接收方法在通訊物件呼叫後逾時的時間區間。

(繼承來源 ChannelManagerBase)
IDefaultCommunicationTimeouts.SendTimeout

取得通訊物件呼叫的 send 方法逾時結束的時間區間。

(繼承來源 ChannelManagerBase)

適用於