我有一个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 []输入)
你能告诉我你是这样的,我怎么解决呢,我真的需要在对象中