首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从JsonResult获取HttpStatus

从JsonResult获取HttpStatus
EN

Stack Overflow用户
提问于 2013-09-03 23:15:31
回答 2查看 68关注 0票数 0

我从我的控制器方法返回一个JsonResult

代码语言:javascript
复制
public JsonResult deleteStuff()
{
    //Do some stuff
    Response.StatusCode = (int) HttpStatusCode.NoContent;
    return Json(new {}, JsonRequestBehavior.AllowGet);
}

我想写一个测试来确认JSON数据是一个空对象,HttpStatus是204,但是我不能用TestStack或者直接从返回的对象得到结果。

例如:

代码语言:javascript
复制
var myResult =_administratorController.DeleteTheme(dummyId);

代码语言:javascript
复制
 _administratorController
    .WithCallTo(x => x.DeleteTheme(dummyId))
    .ShouldReturnJson(x =>
        {
            Assert.That(HttpResultExtensions.ToResponseStatus(x), Is.EqualTo((int) HttpStatusCode.NoContent));
        });
    }
EN

回答 2

Stack Overflow用户

发布于 2013-09-04 16:15:39

JsonResult不包含有关状态代码的信息。此信息在您在控制器操作中使用的Response对象上可用。因此,在您的单元测试中,您可以简单地从那里读取它。我猜您一定是模拟了它,以便能够调用此控制器操作,因此您已经有了对它的引用。

票数 0
EN

Stack Overflow用户

发布于 2013-09-04 16:22:35

你不能把statusCode放进你的Json本身吗?

代码语言:javascript
复制
return Json(new 
{
   statusCode =(int) HttpStatusCode.NoContent
}, JsonRequestBehavior.AllowGet);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18595823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档