簡體   English   中英

什么是ASP.NET MVC應用程序中的“發布”?

[英]What is “posted” in ASP.NET MVC applications?

當我查看來自許多MVC來源的更多代碼和博客文章時,我仍然沒有對發出請求時“張貼”的內容有所了解。 我意識到MVC不支持發布,但是我很難找到可以充分解釋它的資源。

在控制器的public ActionResult nameOfAction(what the heck goes here?) { ... }我的參數是什么?

有時,它看起來像是Visual Studio腳手架(int id, MyObject myobject)用於編輯樣式的操作-它包括我模型中的內容,但並非總是如此。

有時,它是(int id, FormCollection collection)用於刪除樣式的操作。 為什么不在這里使用建模對象? 是否始終將FormCollection對象“發布”?

有時,我看到(RouteInfo routeInfo)在我的MVC2 Intellisense中無法識別(僅此MVC1還是其他?)

我如何/應該/應該如何建立這些參數? 我認為這將在設計時對我有很大幫助。

從MVC中的表單回發的是表單數據,該數據包括鍵值對中的每個表單元素。

如果僅需要此信息,則可以使用:

public ActionResult nameOfAction(string name, string lastName, string etc)

MVC具有一些智能數據模型綁定,該綁定采用表格數據並自動創建一個對象,該對象是域模型的一部分。 例如,它可以使用提供的表單數據自動創建一個Person對象。

我認為這與安全性有關,因為您網站的用戶可能會發布不屬於您表單的數據,並猜測您的模型將注入自己的數據。 我不認為這是一個大問題,這就是我要走的路。

我認為您可以使用反偽造幫助程序來防止用戶回發表單中不允許的數據。 反偽造

將強類型視圖與視圖模型和強類型助手一起使用。 然后,在POST時,應該獲取該視圖模型的實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM