Razor Pages - Get 與 Post

建立一個Razor Pages 檔案,並且配置其中的內容,有兩組 form ,其 method 分別設定為 get 與 post ,分別支援 Get 與 Post 的資料傳送方式,各插入一個 Input ,指定其 name 為 "name" ,以傳入PageModel 類別的對應方法。

最下面一行的 @Model.msg 是取這個頁面檔案 PageModel 中的 public 變數 msg 的值,以 h2 標籤包裝顯示在頁面上。


切換至同名的 PageModel 類別檔,輸入其中的內容,一開始是 public 字串變數 msg,後續的方法根據表單操作調整變數值。

第一個是 OnGet 方法,參數 name 接受 Get 表單傳來的資料,第二個 OnPost 方法同樣具有名稱 name 的參數,接受 Post 表單傳來的方法。無論 Get 或 Post ,均根據參數的值設定對應的訊息字串,儲存於 msg。



執行專案,並輸入網址列 hellogetpost 以執行 hellogetpost.cshtml ,由於沒有任何網頁傳入的資料,一開始最基本的 OnGet 方法被執行,參數 name 是空的,因此取得畫面中的方法。

於文字方塊分別輸入不同的資料,按下按鈕,可以得到對應的時間回應資訊。



例如這是在畫面中第二個文字方塊輸入特定名稱,按下「Post 傳送」按鈕的回傳結果。

Razor Pages 遵循 Http 的要求/回應標準,並搭配 HTML的表單配置規則,支援 Get/Post 的表單方法,結合 PageModel 讓 Web 應用的開發更具生產力,同時更為清楚且容易理解






沒有留言: