Re: [問題] MVC html.helperfor調用Viewmodel

作者: rexhuang (BlueCancer)   2018-08-28 22:52:35
※ 引述《forewero (木日一)》之銘言:
: 最後在view上要呈現的時候
: 例如
: @model project.viewmode.viewmodel_test
: @html.labelfor(m=>m.company)
: 這時候我只點得出company
: 原因我大概明白
: 所以說實務上我要這樣做我是不是在viewmodel裡面就要把所有屬性訂起來?
ViewModels定義的是cshtml要呈現的欄位
LastUpdateUserID、LastUpdateTime...等不需呈現的欄位不會訂在ViewModels
: 那如果是這樣的話
: 如果同一個view上我要導入多個model,且要調用html.XXX for時
: 我就一定得用partial view了?
Partial View用途是HTML的重覆使用,和這無關
cshtml會使用你自訂的ViewModels,不是EF產生的Model
: 而且這樣我在controller時是不是還得把所有的屬性對應起來?
: 這樣子的話html.xxxfor豈不是不太好用
: 最後再問一個小問題
: 資料驗證的部分大家會利用ValidationMessage去做
: 還是自己刻?
: 像是擺在ajax丟後台判定,再去前台刻js這樣
: 雖然有ValidationMessageFor,但是為了避免database更新
: 我自己是寫一個class,內容跟EF產的九成九像
通常是用Partial Class寫一個MetaData Class
內容真的會和EF產的很像,沒要驗證和呈現在cshtml的欄位可以不用定義在MetaData
常用/自訂的驗證還可以做成Attribute,別個專案可以重複利用程式碼
應該會比自己刻快很多,而且一次搞定前後端驗證
https://goo.gl/PxxA9F 有那多東西可以用
: 自己再刻errormessage
: 這樣一來的功好像沒省到哪裡去...
: 目前進入程式的世界大概八個月
: 如果有甚麼觀念不對的地方還請各位見諒QQ
小弟我也剛學,不一定正確,有誤請您或版上強者指正
提供範例參考
https://code.msdn.microsoft.com/ASPNET-MVC-Application-b01a9fe8
https://github.com/twMVC/twMVC-3-2
https://goo.gl/wbbZm5 自己練習的專案
作者: forewero (木日一)   2018-08-29 12:46:00
謝謝你!很有幫助

Links booklink

Contact Us: admin [ a t ] ucptt.com