ASP.NET Core 3.0 中 OkNegotiatedContentResult 的替代品是什么?

3
我有以下代码:
    public IActionResult PostOpenBase64([FromBody]Open64Request request)
    {
        string param = Base64.DecodeFromBase64(request.b64);
        EvaluationParameter ep = 
        JsonConvert.DeserializeObject<EvaluationParameter>(param);
        OpenRequest or = new OpenRequest();
        FindRequest fr = new FindRequest();
        or.Parameters = ep;
        fr.Parameters = ep;
        IActionResult ret = Post(fr);

        var contentResult = ret as OkNegotiatedContentResult<FindResponse>;

        FindResponse response = contentResult.Content;

        if (response.MustOpen || response.EvaluationId == 0)
        {
            Post(or); //Open
            ret = Post(fr);
        }

        return ret;
    }

这里的问题是在ASP.Net Core中,OkNegotiatedContentResult未知。有人有解决这个问题的想法吗?

1
ن½ ه°‌试è؟‡ن½؟用Microsoft.AspNetCore.Mvc.OkObjectResultوˆ–者Microsoft.AspNetCore.Mvc.OkResultè؟™ن¸ھهŒ…هگ—ï¼ں - undefined
你想要实现什么目标?也许有其他的方法可以达到同样的效果呢? - undefined
也许吧!在Asp.Net MVC的OkNegotiatedContentResult中它是有效的。 - undefined
试一下这个:FindResponse findResponse = new FindResponse(); var contentResult = ret as OkObjectResult(findResponse); - undefined
我会尽力去做的。谢谢 - undefined
谢谢,我成功解决了! - undefined
1个回答

2

我成功地在ASP.Net Core中按照以下方式解决了问题:

 public IActionResult PostOpenBase64([FromBody]Open64Request request)
    {
        string param = Base64.DecodeFromBase64(request.b64);
        EvaluationParameter ep = JsonConvert.DeserializeObject<EvaluationParameter>(param);
        OpenRequest or = new OpenRequest();
        FindRequest fr = new FindRequest();
        or.Parameters = ep;
        fr.Parameters = ep;
        IActionResult ret = Post(fr);

        var contentResult = ret as OkObjectResult;
        FindResponse response = (FindResponse)contentResult.Value;

        if (response.MustOpen || response.EvaluationId == 0)
        {
            Post(or); //Open
            ret = Post(fr); //Find
        }

        return ret;
    }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接