ChannelBase.GetProperty<T> 方法

定义

从通道堆栈的适当层,返回所请求的类型化对象(如果存在)。

public:
generic <typename T>
 where T : class virtual T GetProperty();
public virtual T GetProperty<T> () where T : class;
abstract member GetProperty : unit -> 'T (requires 'T : null)
override this.GetProperty : unit -> 'T (requires 'T : null)
Public Overridable Function GetProperty(Of T As Class) () As T

类型参数

T

方法正在查询的类型化对象。

返回

T

如果存在,则返回所请求的类型化对象 T,如果不存在,则返回 null

实现

注解

使用此方法可请求从通道堆栈的适当层返回一个类型化对象,如用于设置属性或获取状态的接口。 如果某个层支持返回所请求的对象,则该层会返回对象。 如果不支持,则该层会将调用委托给堆栈中的下一层。 如果到达堆栈底部仍然没有通道层支持所请求的对象,则该方法返回 null

此外,任何时候要实现通道,都必须确保重写 GetPropertyGetProperty 是沿通道堆栈传达信息的绝佳方式,无需知道你下面有哪些通道,或者上面哪些通道可以执行查询。 定义可从中查询可用信息的接口。 如果不能识别 GetProperty 的类型参数,则委托给堆栈中的下一个通道,如果要在堆栈底部创建一个新的传输通道,则返回 null

适用于