必须有一个路由的名字才可以引用它, 所以在GetProduct方法上的Route这个attribute里面加上Name="GetProduct", 然后在CreatedAtRoute方法第一个参数写上这个名字就可以了, 尽管进行了引用...每次请求进到Action的时候, 我们在ProductCreationModel添加的那些注解的验证, 就会被检查....Description被设置成null. 这就是HTTP PUT标准的本意: 整体修改, 更新所有属性, 尽管你的代码可能不这么做....但如果你没有针对不同的操作使用不同的Dto, 那么别忘了检查传入Dto的id 要和参数id一致才行....返回204, 表示成功, 但是name是必填的, 所以代码还有问题.
我们做了ModelState检查, 但是为什么没有验证出来呢?