我正在尝试使用Sitecore 7.2在我的页面上创建一些post方法,遗憾的是它们无法正常工作,我似乎无法找到处理它的最佳方法。
我有两种方法
[HttpGet]
public ActionResult ViewApplicationsPage(){
//do stuff
}
[HttpPost]
public ActionResult ViewApplicationsPage(ApplicationPageViewModel model, (form parameters)){
//do other stuff
}
该页面是/ View-Application但是当我使用Html.BeginForm或Url.Action时,它指向“api / sitecore / ViewApplications / ViewApplicationsPage”
所以我无法将我的发布数据发送到控制器,而无需手动构建字符串,如url + "?" + "&page=" pageValue + &count=" + countValue
等。
有没有办法引用正确的区域并传递值比手动构造字符串更好。
我需要在同一页面上应用过滤器和分页。
答案 0 :(得分:3)
[HttpPost]
和[HttpGet]
是否倒置?我的意思是,您应该期望帖子中的表单值不是get。
答案 1 :(得分:0)
正如RobertoBr所说,你的Http动词会向后倾斜。 Http GET请求会将您的数据作为一系列键/值对附加到url本身 - 这就是为什么你必须做一些奇怪的字符串构建才能正确地命中你的控制器。 Http POST请求将数据作为键/值对发送到消息正文本身。
我也会看看方法签名 - 我认为你会传回viewmodel或formcollection,但可能不会同时传递给表单提交类型动作。