Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Api ModelState.AddModelError_Api_Web_Asp.net Mvc 4 - Fatal编程技术网

Api ModelState.AddModelError

Api ModelState.AddModelError,api,web,asp.net-mvc-4,Api,Web,Asp.net Mvc 4,我错过什么了吗?我试图从我的WebAPI更新方法返回模型验证错误,如下所示 public void Update public void UpdateModel(Models.Model entity) { ModelState.AddModelError("name","error"); return; 但是,返回的JSON没有验证错误 例如在本文中 当我尝试使用上一篇文章中提到的验证过滤器时,我发现错误操作xxxxx应用了一个或多个过滤器,这些过滤器不是从

我错过什么了吗?我试图从我的WebAPI更新方法返回模型验证错误,如下所示

public void Update  public void UpdateModel(Models.Model entity) {
        ModelState.AddModelError("name","error");
        return;
但是,返回的JSON没有验证错误

例如在本文中


当我尝试使用上一篇文章中提到的验证过滤器时,我发现错误操作xxxxx应用了一个或多个过滤器,这些过滤器不是从AuthorizationFilterAttribute派生的。DataController的插入/更新/删除操作只支持授权筛选器。

ModelState
无法从JSON访问,除非您专门将其序列化。它更多地来自幕后的
HtmlHelper
扩展。如果您试图更新UI,就好像模型状态被标记为这样,那么您就完全错了。您可以:

  • 向服务器发送完整的帖子,并让它呈现适当的响应
  • 获取返回的json,然后根据该响应对字段进行适当的样式设置

  • 我试图将ValidationError放入JSON中,返回的方式与它们在模型中显示的验证属性相同。例如,“ValidationErrors”:[{“_type”:“System.Web.Http.Data.ValidationResultInfo,System.Web.Http.Data”,“Message”:“tReleaseDate必须在当前日期之后”,“ErrorCode”:0,“StackTrace”:null,“SourceMemberNames”:[“tReleaseDate”]}