2013-04-10 122 views
3

我想學習一些ServiceStack的東西。現在,我已經成功完成了本教程(幾乎完成):http://www.ienablemuch.com/2012/12/self-hosting-servicestack-serving.htmlServiceStack/Razor - 如何在提交表單上獲取POST數據?

我想要執行的下一步是使用提交按鈕創建html表單,並將捕獲的數據輸入到C#代碼中的變量中。

我知道如何在cshtml文件中創建html表單,但我不知道如何在這種情況下輸入POST數據 - 使用ServiceStack。你能提供任何提示/代碼樣本嗎?

此外,還有一些我不在本教程中明白:

19。要爲剃鬚刀頁面使用強類型模型,請使用inherits指令。首先創建一個模型,它必須是公開的,其複製到 輸出目錄屬性必須設置複製如果新太

這是什麼「模式」究竟如何創造的呢?而且,第20條,在CSHTML代碼:

@inherits的ViewPage

那麼,什麼是 「的ViewPage」,以及如何正是這種說法的作品?

+1

Razor會將頁面中的CS代碼編譯成一個類,使用「inherits」表示它必須使用哪個基類(ViewPage是Razor的HTML頁面沒有模型的基類)。如果你讓它輸入(ViewPage ),那麼它_should_(我沒有嘗試ServiceStack)將發佈的數據捕獲到你的模型中,而無需做任何事情。 – 2013-04-10 12:01:21

+0

好的,但在這種情況下,「模型」是什麼?教程說我應該先創建我的模型,但我不確定它是什麼意思?如果我只創建類並將其放入VievPage <>,那麼編譯cshtml錯誤說這個類沒有找到(我的意思是ServiceStack輸出,而不是Visual Studio編譯錯誤)。 – user1209216 2013-04-10 12:04:44

+0

這是從控制器傳遞到視圖的數據類。可能在post方法中,您對控制器中的數據比在視圖中更感興趣。類應該是公共的並且可訪問(相同的輸出目錄)。 – 2013-04-10 12:30:29

回答

2

已解決。那麼,需要做些什麼:

  • 在裏面創建公共類。屬性名應當賽後/在我的形式

  • 獲取值補充一點:@inherits ViewPage<BillionaireServiceStackRazorSelfHosting.MyClass>到CSHTML

表格提交之後,相應的屬性設置。我不知道這是否是好方法(請糾正我,如果沒有),但我已經添加了一些代碼來在MyClass屬性中設置「處理程序」,而不是將代碼添加到使用捕獲值的cshtml。

一切似乎都按我的意思工作。

相關問題