为什么我的ODataACtionParameters对于POST请求为空?

时间:2019-03-06 03:45:07

标签: c# asp.net .net odata

.net开发新手。我正在尝试向Web服务发布请求。

Web服务实现

[HttpPost]
    public async Task<ICollection<BoConsolidatedData>> GetTesDatas(ODataActionParameters actionParameters)
    {
        try
        {
            var reqId = (int)actionParameters["ReqId"];

我使用Chrome Advance REST客户端,在其中将内容类型设置为application / json

我在体内以JSOn的形式发送了参数

  

{“ ReqId”:9481}

当我调试服务时,我的 actionparameters 始终为空。怎么了?

1 个答案:

答案 0 :(得分:1)

您已经注册了此功能吗?代码可能看起来像这样:

var builder = new ODataConventionModelBuilder();

builder.Function("GetTesDatas")
    .ReturnsCollection<BoConsolidatedData>()
    .Parameter<int>("ReqId")
    .Required();

您可以使用与注册其他OData资源相同的modelbuilder进行此操作。