簡述mvc工作原理 在mvc模式中,各層是如何傳遞參數(shù)的?
在mvc模式中,各層是如何傳遞參數(shù)的?將數(shù)據(jù)從頁面?zhèn)鬏數(shù)組VC有三種方法:(1)使用viewdata傳輸數(shù)據(jù)。Viewdata相當(dāng)于一個數(shù)據(jù)字典,其中包含控件和視圖之間傳輸?shù)乃袛?shù)據(jù)??刂破鲗⑾蜃值渲?/p>
在mvc模式中,各層是如何傳遞參數(shù)的?
將數(shù)據(jù)從頁面?zhèn)鬏數(shù)組VC有三種方法:
(1)使用viewdata傳輸數(shù)據(jù)。Viewdata相當(dāng)于一個數(shù)據(jù)字典,其中包含控件和視圖之間傳輸?shù)乃袛?shù)據(jù)??刂破鲗⑾蜃值渲刑砑有碌臄?shù)據(jù)項,視圖將從字典中讀取數(shù)據(jù)。
(2)使用viewbag傳輸數(shù)據(jù)。Viewbag基于Asp.net4版本. 0和。Net框架是動態(tài)類型的對象。雖然viewbag比viewdata慢,但是在viewpage中查詢數(shù)據(jù)時不需要進(jìn)行類型轉(zhuǎn)換,可讀性更好。
(3)使用ViewModel傳輸數(shù)據(jù)。ViewModel是ASP.NETMVC應(yīng)用程序中隱式聲明的層(用于維護(hù)模型和視圖之間的數(shù)據(jù)傳輸)是視圖的數(shù)據(jù)容器。
頁面?zhèn)髦档膸追N方式?
有兩種方法:獲取和發(fā)布。獲取的方法是在連接之后直接放置一個鍵值對。同樣的道理。HTML?鍵=值。投遞方式比較隱蔽,一般用于提交表格。然后是跳躍:請求.getRequestDispatcher(“ABC”)。Forward(請求、響應(yīng))過去也可以接受參數(shù),但是servlet中的跳轉(zhuǎn)和重定向有很大的區(qū)別。同時,我們可以使用session來交付,這在web開發(fā)中非常重要。
ASP.NET頁面之間傳遞值的幾種方式?
有幾種交付方式:
1。使用post模式將參數(shù)提交到另一個相應(yīng)的頁面,方法是將它們放在URL上;
2。使用會話;
3。使用cookie(類似于2);
4。直接訪問原始頁服務(wù)器控件。不推薦這種方法,浪費(fèi)資源,影響網(wǎng)站性能。
如果您沒有太多的數(shù)據(jù),也不需要考慮太多的安全性,我建議您使用第一種方法。