Open karelg opened 6 years ago
Minu arust ei peaks mudel palju vastutust võtma. Mudeli eest võtavad vastutust kontrollerid ja vaated. Ei saa täpselt aru, mida mõtlete aneemilisuse all.
Ma pigem ütleks, et see ei ole väga OO lähenemine ja viib protseduurilise koodini. https://www.martinfowler.com/bliki/AnemicDomainModel.html
Lisasin mudelisse paar validatsiooni, ehk siis entryDateTime väärtustatakse kohe DateTime.Now ning deadlineDatetime sai külge validatsiooni, mis ei luba minevikus olevaid datetime lisada.
See on natuke parem, aga pole siiski veel rikas domeeni mudel. Selles mõttes database first lähenemine ei olegi kõige sobivam, sellisel juhul EF puhul pigem peaks kasutama code first lähenmist, kus me teeme kõige pealt endale sobiva mudeli ja siis me map'ime selle andmebaasi.
Selge, tulevikus hakkan kasutama code first lähenemist 👍 , Nüüd saan aru, miks on see rikas domeeni mudel vajalik, et ei saaks igasugu rämpsu lisada jne. Mudel peab kohe alguses valideeritud olema, ei saa usaldada kliendipoolseid validatsioone, sest kui Javascript maha keerata, siis ei toimi kliendipoolset validatsiooni, ning kui ilma annotatsioonidega mudel laseb vigased andmed läbi, on kohe jama majas. Peab olema kindluse mõttes ka serveri poolne validatsioon mudelil.
https://github.com/kkorvel/AgileWorksWebAppeals/blob/d8f7e5fdc16cff78d097ddf6c88b32ff562c1fcb/AgileWorksSolution/AgileWorks/Models/Appeals.cs#L29