gpt4 book ai didi

c# - 从Breeze Web API返回警告而不是错误

转载 作者:行者123 更新时间:2023-12-03 08:55:20 25 4
gpt4 key购买 nike

我将Breeze.js和C#WebAPI与BreezeController一起使用。我想更新客户端网页上的实体,将其传递给WebAPI进行更新,保存该实体,然后发送回警告。

[HttpPost]
public SaveResult SaveChanges(JObject saveBundle) {}

有没有一种方法可以返回带有警告信息的SaveResult?不是错误,是警告。

例如,我正在保存居民的年龄。如果年龄小于50岁(这不是错误),我仍然要警告用户,根据我的业务规则,这对于居民来说可能是不正确的年龄。
saveResult.Errors.Add(new EntityError() {
PropertyName = "Age",
ErrorName = "Warning",
ErrorMessage = "The age of the resident is less than 50. You may want to verify that you entered the correct age."
});

如果我这样做(这是我想要的行为):
  • 实体已正确保存。
  • 警告消息以saveResult结构发送回去。
  • 该实体已在服务器上正确更新,并使用saveResult发送回去(即,系统为我的实体生成的主键包含一个新ID)。

  • 但是(这不是我想要的行为):
  • 在客户端上,实体未更新。即PK未更新,并且实体仍处于待处理状态(未保存)。

  • 我确定我在SaveResult中返回错误的事实是问题所在,因为Breeze.js可能将此错误(正确)解释为错误。但是,我看不到如何使用Breeze模型返回警告,并且仍然具有所有功能。

    顺便说一句,我知道我可以在调用WebAPI之前先在客户端进行验证,但是我希望所有验证都在服务器端进行,尤其是因为其中一些验证非常复杂。

    有什么建议?

    最佳答案

    现在微风没有“警告”的概念,而不是“错误”的概念,但是我同意这个概念是有用的。您可以将它添加为微风用户语音(http://breezejs.uservoice.com/)上的功能请求吗?如果它引起足够的兴趣,我们一定会对其进行调查?

    关于c# - 从Breeze Web API返回警告而不是错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27627301/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com