0

对不起,我的 Qs 标题有点奇怪,我没有找到合适的词来解释。纽威斯,

我有一个 WCF RESTful API,我在其中实现了自定义参数检查器类,它继承了 IParameterInspector 以捕获 AfterCall 和 BeforeCall 方法。

public class CustomParameterInspector : IParameterInspector
{

    public void AfterCall(string operationName, object[] outputs, object returnValue, object correlationState)
    {}

    public object BeforeCall(string operationName, object[] inputs)
    {
        // I have to perform certain tasks here
    }
}

现在我的服务接口是这样的

    [OperationContract]
    [CustomInspectorAttribute]
    [WebInvoke(Method = "POST",
        UriTemplate = "GetMyDetail")]
    MyDetail GetMyDetail(MyDetail objMyDetail);

服务类是这样的

public MyDetail GetMyDetail(MyDetail objMyDetail)
    {}

如果我从客户端发布JSON,那么它可以正常工作....在 input[0] 中,我将其类型设为MyDetail

但是如果像这样将输入参数更改为Object

[OperationContract]
    [CustomInspectorAttribute]
    [WebInvoke(Method = "POST",
        UriTemplate = "GetMyDetail")]
    MyDetail GetMyDetail(Object objMyDetail);


public MyDetail GetMyDetail(Object objMyDetail)
    {}

然后它不会在 BeforeCall(string operationName, object[] inputs) 的输入 [0] 中给我 null

你能告诉我是这样吗?我该如何解决它,我真的需要把它放在对象中

4

0 回答 0