如何获取当前端点契约的类型

本文关键字:端点 前端 契约 类型 何获取 获取 | 更新日期: 2023-09-27 18:14:54

我有一个消息检查器,我试图获得当前端点的合同类型。我想反映的类型,但GetType返回null。

var contractType = Type.GetType(OperationContext.Current.EndpointDispatcher.ContractName);
if (contractType != null)
{
    foreach (var member in contractType.GetMembers())
    {
        //do stuff
    }
}

我猜是因为OperationContext.Current.EndpointDispatcher.ContractName持有接口的名称而不是完全限定的类型名称,它无法获得类型。我的配置有完全限定的类型名称,所以我不确定为什么。net这样做。还有别的办法吗?

如何获取当前端点契约的类型

你会找到正确的类型:

OperationContext.Current.EndpointDispatcher.DispatchRuntime.Type

看到MSDN:DispatchRuntime。Type -获取或设置合同类型