我在 .NET Core 2.2 API 中有一个类,我正在对其应用 Fluent Validation。该类具有整数属性public int? PurchasePrice {get;set;}。
该属性的父级的父级有一个枚举,我想要做的是当该枚举的值为 4 时,使该字段成为PurchasePrice必填字段。
我已经开始编写这样的自定义规则:-
RuleFor(pd => pd.PurchasePrice).Custom((a, context) =>
{
var parent = context.ParentContext.InstanceToValidate as ParentObject;
var parentOfParent = context.ParentContext.ParentContext.InstanceToValidate as GrandParentObject;
});然而,第二个 ParentContext 根本不存在于 Intellisense 中,并且还会抛出编译错误,因为它无法被识别。
在编写验证规则时,我遍历对象结构的方式是否错误?
提前致谢!
注意:检索行var parent按预期工作。
慕哥6287543
相关分类