0

我正在使用 RESTier 0.4.0-rc2。

使用 OnUpdating... 如果实体未能通过我的自定义验证逻辑,我将无法取消更新并返回自定义错误。

使用 CanUpdate... 我可以通过返回 false 来取消更新,但是没有传入实体来应用我的自定义逻辑,也无法提供自定义错误。

似乎是一个基本缺陷,我错过了什么吗?

4

1 回答 1

0

即使您已经有了答案,我也想将其提供给其他人。

如果你想要一些自定义的更新验证逻辑,你可以实现一个类实现接口 IChangeSetEntryValidator,在你想要的任何逻辑中进行验证,然后添加类似的逻辑

DataModificationEntry dataModificationEntry = entry as DataModificationEntry;
var entity = dataModificationEntry.Entity;

 // Customized validate logic and if error, add a error validation result.
validationResults.Add(new ChangeSetValidationResult()
{
    Id = dataModificationEntry.EntitySetName+ dataModificationEntry.EntityKey,
    Message = "Customized error",
    Severity = ChangeSetValidationSeverity.Error,
    Target = entity
});

你可以在这里找到完整的讨论

于 2016-05-06T21:02:40.850 回答