在MVC
應用我加入多個表,並返回它從Controller
到View
:綁定Model.ID到複選框列表和交Model.X,Model.Y等特性控制器
| EmployeeID | ControlID | DoorAddress | DoorID | DoorName |
------------------------------------------------------------
| 921 | 1 | 1 | 101 | Door 1 |
| 921 | 1 | 2 | 102 | Door 2 |
| 921 | 1 | 3 | 103 | Door 3 |
| 921 | 1 | 4 | 104 | Door 4 |
------------------------------------------------------------
控制器:
public ActionResult Edit(int? id)
{
// Create and execute raw SQL query.
string query = "SELECT a.EmployeeID, a.ControlID, a.DoorAddress, t.DoorID, t.DoorName FROM TEmpAccess AS a " +
"INNER JOIN TDoor AS t ON a.ControlID = t.ControlID and a.DoorAddress = t.DoorAddress where EmployeeID = " + id.ToString();
IEnumerable<EmpAccessViewModel> data = db.Database.SqlQuery<EmpAccessViewModel>(query);
return View(data.ToList());
}
欲DoorName
值(門1,門2,門3,門4)結合到checkbox list
並讓用戶進行選擇。之後,我想將所選門的相應EmployeeID
,ControlID
,DoorAddress
,DoorID
值傳遞給Controller
。因爲,如果用戶選擇門1和門3的例子中,那麼我將通過以下這些值來Controller
:
| EmployeeID | ControlID | DoorAddress | DoorID |
-------------------------------------------------
| 921 | 1 | 1 | 101 |
| 921 | 1 | 3 | 103 |
-------------------------------------------------
通過使用razor
語法或在視圖javascript
,我怎樣才能做到這一點?提前致謝。
使用視圖模型,包括一個'布爾IsSelected'屬性,以便您可以將其綁定到一個複選框。參考[這個答案](http://stackoverflow.com/questions/29542107/pass-list-of-checkboxes-into-view-and-pull-out-ienumerable/29554416#29554416)爲例 –
@StephenMuecke謝謝,但給出的答案沒有複選框列表。你能舉一個關於我的問題的例子(我通過使用sql查詢返回給定的列表)有複選框列表嗎? – hexadecimal
當然它!研究它 - 集合中的每個項目都有一個與之關聯的複選框。提交表單時,您可以查詢返回的集合並使用'.Where(m => m.IsSelected)' –