c# - 在 API 中使用 ActionResult 类方法
问题描述
我正在查看此网站中的代码示例,我注意到在一个端点中它使用 Ok() 返回类型,而在另一个端点中它只返回对象。什么时候应该使用 ActionResult 的方法,例如 Ok()、Created(),... 什么时候应该只返回对象?
解决方案
比较
return result;
return OK(result);
它们都将正常工作。当您使用时,return result;
您实际上是在使用:
public static implicit operator ActionResult<TValue>(TValue value);
并且 Ok 状态 (200) 是隐含的默认值。
所以这是一个风格问题,但我更喜欢更简单return result;
的组合,ActionResult<T>
因为它是类型安全的。当你不小心使用return Ok(21);
时,你会得到一个运行时错误,而不是编译器错误。
推荐阅读
- java - 如何使用多维数组打印星号网格?
- xamarin - Xamarin 形成深度链接
- c# - 如何修复错误 CS0165:“使用未分配的局部变量 'a'”?
- xml - vba 上的沃尔玛 OAuth 身份验证(令牌 API)
- dart - Flutter 模拟器个人键盘不起作用
- android - Gradle:错误:程序类型已存在:androidx.activity.R$attr
- java - 正则表达式:用空字符串替换所有无效字符
- python - 如何将一个类实例的变量存储在另一个类的实例中
- c++ - range-v3:用分隔符连接管道范围
- java - 使用 long Always 在 SQLite 中插入数据时遇到问题,返回 -1