2015-01-02 85 views
0

我正在使用Asp.net MVC的區域功能。Asp.net MVC:具有相同控制器和操作方法的多個區域 - 帶Post操作的Html.BeginForm

兩個不同的區域具有相同名稱的控制器:

Two area with same controller name

AdminAreaRegistration.cs enter image description here

UserAreaRegistration.cs enter image description here

我想有一個形式的帖子到以下方法:

@using (Html.BeginForm("UserLogin", "Login", 
new { area = "", model = this.Model, returnUrl = Request.QueryString["returnUrl"] },  
FormMethod.Post, new { @Id = "frmLogin" })) 

但我得到了一個錯誤:

enter image description here

我怎麼能與多個區域解決它具有使用Html.BeginForm同名控制器和POST方法()?

+1

[在我的項目中具有相同名稱的多個控制器問題]的可能重複(http://stackoverflow.com/questions/5092589/having-issue-with-multiple-controllers-of-the-同名在我的項目中) –

+0

不重複,它對Html.BeginForm()的關注。你有什麼想法如何解決它? –

+0

我已經爲所有控制器和不同區域的動作註冊路線,但是我想通過傳遞表單數據調用post方法 –

回答

1

你必須定義的HTML輔助標記的區域如下

您所在地區的名稱必須與HTML助手來定義。

@using (Html.BeginForm("UserLogin", "Login", 
new { area = "YOUR AREA NAME", model = this.Model, returnUrl = Request.QueryString["returnUrl"] },  
FormMethod.Post, new { @Id = "frmLogin" })) 
+0

我已經嘗試使用相同的語法,但我沒有任何解決方案:( –

相關問題