将JSON发布到System.Object中的WCF RESTful API不接受它,但Class接受输入

时间:2012-06-07 14:03:16

标签: c# .net json wcf wcf-rest

抱歉,我的Qs标题有点奇怪,我没有找到正确的解释。 NEWAYS,

我有一个WCF RESTful API,我在其中实现了Custom Parameter Inspector类,该类继承了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 ,那么它工作正常....在输入[0]中,我的类型为 MyDetail

但是如果将输入参数更改为对象,就像这样

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


public MyDetail GetMyDetail(Object objMyDetail)
    {}

然后它不会在BeforeCall中的输入[0]中给出null(字符串operationName,object []输入)

你能告诉我你是这样的,我怎么解决呢,我真的需要在对象中

0 个答案:

没有答案