1
是否適合使用Fluent驗證來調整數據? 例如,我們有一個電話號碼字段,服務層接受其符合特定的正則表達式所有的格式,所有的下面都爲相同數量的有效格式:使用Fluent驗證來維護輸入格式或調整輸入
+2 010 00011122
+201000011122
00201000011122
我想在數據庫中,保持一種格式,但是允許我的所有客戶使用任何。 我想操縱模型值的驗證過程如下圖所示:
RuleFor(m => m.Phone)
.NotEmpty().WithMessage(Common.ResourceFiles.Validation.Required)
.Matches("Constants.Regex.Phone").WithMessage(Common.ResourceFiles.Validation.InvalidFormat)
.DependentRules(d => d.RuleFor(m => m.Phone).Must(
(model, phone) =>
{
if (phone.StartsWith("+"))
model.Phone = model.Phone.Replace("+", "00");
// Other changes here
return true;
}));
它是合法的,這樣做呢?如果不是什麼層應該強制執行這樣的邏輯?