如何從我的View Model訪問文本框?我的頁面正在返回訂單號列表,我希望在頁面頂部有一個搜索文本框。但是,似乎我只能從foreach語句訪問文本框。從IENumerable View的ViewModel訪問TextBox
簡單視圖模型
public class ViewOrdersByCustomerIDViewModel
{
[Display(Name="Order Number/Order ID")]
public int OrderID { get; set; }
[DisplayName("Product Name")]
public string ProductName { get; set; }
[DisplayName("Order Date")]
public DateTime ?OrderDate { get; set; }
public string txtBoxOrderNumber { get; set; }
}
我覺得像這樣的工作,但顯然是不...
@model IEnumerable<something.something.ViewOrdersByCustomerIDViewModel>
@using (Html.BeginForm("OrderNumberSearch", "Order", FormMethod.Post))
{
<strong>Enter Order Number/Order ID</strong>
@Html.TextBoxFor(m=>m.txtBoxOrderNumber)
<input type="submit" name="submit" value="Go" />
}
任何幫助,將不勝感激。
謝謝!
EDIT
文本框的目的是過濾/搜索所顯示的順序的數字。我只需要一個文本框,並且不希望通過創建多個搜索框來循環。如果我的邏輯關閉,並有更好的方法來完成這一點,請讓我知道。我只是認爲在模型中擁有所有屬性會更清潔,但情況可能並非如此。
作爲你的模型是'IEnumerable',你需要遍歷這一點,使用TextBoxFor獲得文本框。 – ramiramilu 2015-02-23 11:50:10
你爲什麼要在模型中使用它?如果你想搜索,你可以在你的控制器操作中使用它並將其用於搜索。請更新你真正想要做的事情。 – BabyDuck 2015-02-23 11:50:51
不清楚你想要做什麼。該表單的目的是獲得與「OrderNumber」相匹配的過濾訂單清單嗎? – 2015-02-23 11:50:52