asp.net - 从 IActionResult 获取值

标签 asp.net asp.net-mvc .net-core asp.net-core-mvc

我有 Controller 和一些端点 Task<IActionResult> MyCustomEndpoint这是返回 return Ok(CustomDataType) .返回的数据是来自 JSON 的格式。

现在我想从其他 Controller 调用该端点,例如 var resp = myController.MyCustomEndpoint ,其中 resp 变为 IActionResult .问题是 resp现在不再只返回数据,而是返回图像上看到的所有这些字段。

enter image description here

我的问题是,如何只访问和返回Value字段,因为 resp.Value不工作。

感谢您的帮助。

最佳答案

你必须转换为 as ObjectResult

public async Task GetFormSummary_ItShouldReturnSingleForm_NotNull()
{

    var formId = new Guid("5EF685E7-1167-4226-7F5E-08D9009544A3");
   
    var mockFormService = new Mock<IFormService>();

    mockFormService.Setup(x =>  x.GetAsync(formId).Result)
        .Returns(GetTestForm());

    // Inject
    var formController = new FormController(_logger, mockFormService.Object);

    // Act
    var result = (await formController.GetAsync(formId)) as ObjectResult;

    // Assert
     Assert.IsAssignableFrom<FormViewModel>(result.Value);

}

关于asp.net - 从 IActionResult 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52037038/

相关文章:

javascript - Bing map 未使用 asp.net mvc 显示位置

c# - .NET 6 在 Web API 项目 Controller 中使用 HTTP 客户端进行 API 调用

c# - AspNetCore默认授权用户未经过身份验证

css "opacity"属性不支持

asp.net - 静态字段初始值设定项有时会在 Application_start 之前运行

javascript - ASP.Net MVC 提交表单找不到方法 - 无法使用普通表单?

asp.net-mvc - MVC单元测试 Controller 的优势

.net - 不同的运行时版本和新的 .NET CLI

c# - ASP.net 无法将文件附加为数据库

jquery - 从 Bootstrap 下拉列表中检索值不起作用