asp.net - 在检查 ModelState 是否有效时,有没有办法返回特定的错误?
问题描述
在检查 ModelState 是否有效时,有没有办法返回特定的错误?
假设我正在使用下面的代码检查我的控制器中是否有任何错误。
控制器
if (!ModelState.IsValid)
return BadRequest( "Invalid request");
我的模型:
[StringLength(500, ErrorMessage = "cant have more than 500 caracteres")]
public string Description { get; set; }
我希望它返回模型错误“不能超过 500 个字符”,我该怎么做?
解决方案
是的,您可以,请参阅ModelState属性。
例子:
if (!ModelState.IsValid)
{
var message = string.Join(" | ", ModelState.Values
.SelectMany(v => v.Errors)
.Select(e => e.ErrorMessage));
return new HttpStatusCodeResult(HttpStatusCode.BadRequest, message);
}
推荐阅读
- omnet++ - $ParameterName 定义的 INET sink 节点的位置未更新
- neo4j - Neo4j 企业 4.2.9 中未处理的非特定错误
- r - 将多列中的列值更改为 R 中的 NA
- ocr - 如何通过命令行或任何 API 调用 Abbyy Fine reader?
- react-native-contacts - 如何在反应原生联系人中使用添加新功能?
- mysql - 使用 where 和 groupBy 重复检查变慢 - Laravel DB 查询
- c# - wpf从viewmodel-c#端制作网格列tnd行
- php - 如何在 laravel 中将默认 cookie 加密更改为更安全的加密?
- c - 为什么比较结构数组的两个元素(从文件中获取和分配)不返回正确的值?
- javascript - 如何在微软办公查看器中实现查找功能?