对不起,我的 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
你能告诉我是这样吗?我该如何解决它,我真的需要把它放在对象中