1
考慮到我有:我可以用StringLengthAttribute以編程方式測試一個屬性來檢查它是否有效嗎?
[StringLength(10)]
public string Bibble {get; set;}
我可以單獨檢查,看看是否比博是有效的?
我認爲:
PropertyInfo[] props = typeof(MyBibbleObject).GetProperties();
foreach (PropertyInfo prop in props)
{
object[] attrs = prop.GetCustomAttributes(true);
foreach (object attr in attrs)
{
StringLengthAttribute stringLengthAttribute = attr as StringLengthAttribute;
if (stringLengthAttribute != null)
{
string propName = prop.Name;
// Could be IsValid?
stringLengthAttribute.IsValid()
}
}
}
但是IsValid的方法需要一個對象,我沒想到。我想知道是否有更好的方法來確定它是否有效。我必須在每個物業的基礎上做。
正確,你傳入你想測試的值。 – Igor
在您當前的情況下,您無法訪問ModelState? – GGO
我擔心a)它需要一個值,以及b)當它無法訪問屬性本身的元數據作爲普通屬性時它是否能夠處理數組和各種數據類型 – NibblyPig