Dot-Net
EF Fluent Api 可以設置最小長度嗎?
似乎使用 Fluent API 具有更大的靈活性。
所以我選擇遵循的方式總是使用 Fluent API 來確定它在 db 中具有的功能,而不是使用註釋來。
但問題是,我找不到設置最小長度的方法。有沒有辦法做到這一點?
而且我注意到,這種方式討論的話題不多。Fluent API 方式流行嗎?
希望我們選擇正確的一面。
目前這在 EF 中是不可能的。如果你真的必須設置一個最小長度,你可以用一個屬性來做:
[MaxLength(10),MinLength(3)] public string MyProperty {get; set;}正如您問題下的第一條評論已經說過的那樣,在數據庫中進行最小長度檢查可能並不常見(我自己從未見過),因此當您嘗試輸入長度小於 3 的值時,這只會引發驗證錯誤.
對於字元串屬性使用 StringLength
[StringLength(30, MinimumLength = 5)] public string MyStringProperty { get; set; }