0
我有我希望的是一個簡單的問題。我試圖在MVC視圖上使用多個窗體(如Multiple Forms in same page ASP.net MVC) - 每個窗體在同一個控制器上調用不同的操作。我的問題是,任何形式,我稱之爲命名不同的行動,我看到一個錯誤。下面簡單的例子:MVC視圖上的多種形式
Index.cshtml
@using (Html.BeginForm("index", null, FormMethod.Post, new { @class = "form -horizontal" }))
{
<button class="btn btn-primary" type="submit">index</button>
}
<br />
@using (Html.BeginForm("foobar", null, FormMethod.Post, new { @class = "form -horizontal" }))
{
<button class="btn btn-primary" type="submit">foobar</button>
}
的TestController
public class testController : Controller
{
// GET: test
public ActionResult Index()
{
return View();
}
[HttpPost, ActionName("Index")]
public ActionResult IndexPost()
{
return View();
}
[HttpPost]
public ActionResult foobar()
{
return View();
}
點擊 「索引」 按鈕作品(什麼都不做) 點擊 「FOOBAR」 按鈕拋出一個錯誤
The view 'foobar' or its master was not found or no view engine supports the searched locations.
我明顯失去了一些東西 - 任何智慧是讚賞
'返回視圖(「指數」);'兩個POST方法 –
當使用'返回視圖();'控制器自動查找具有相同的景色名稱作爲動作,所以它正在查看'foobar.cshtml'這個可能不存在的視圖文件夾。如上所述,如果添加視圖名稱參數,foobar操作將返回索引視圖。 – Jake
謝謝!返回視圖(「索引」)在這個例子中工作..這顯然是一個簡單的測試,讓我試試這與我真正的基於模型的東西,看看它是如何工作的。 –