我有一個Case對象,它自身包含許多對象(請參見下文),該對象又包含對象。C#遍歷對象層次結構以執行方法
這些對象可以從BaseDto類繼承,該類實現ValidateObject方法,該方法在當前對象上執行DataAnnotation驗證程序,從而返回驗證錯誤並累積到ValidationResult集合中。
我想將以下混亂的語法轉換爲可以遍歷給定對象的對象層次結構的對象,以及實現ValidateObject的每個對象(及其子對象!)執行它。
我感覺有點卡住了,所以我會感激任何想法。
cCase.ValidateObject() &
cCase.Object1.ValidateObject() &
cCase.Object2.ValidateObject() &
cCase.Object3.ValidateObject() &
cCase.Object3.ChildObject1.ValidateObject() &
cCase.Object3.ChildObject2.ValidateObject() &
cCase.Object3.ChildObject3.ValidateObject() &
cCase.Object3.ChildObject4.ValidateObject() &
cCase.Object3.ChildObject4.ChildChildObject1.ValidateObject() &
cCase.Object3.ChildObject5.ValidateObject() &
cCase.Object4.ValidateObject() &
cCase.Object4.ChildObject6.ValidateObject();
爲什麼不ValidateObject的每個類的實現也爲所有對象包含的孩子的運行ValidateObject? – juharr