我採用這種模式有一個表格:表單驗證複雜型是無效
public class MyModel
{
public User SalesManager {get;set;}
public string Title {get;set;}
...
}
呈現這樣使用下拉給用戶的一個的HtmlHelper擴展名列表:
<label for="SalesManager">Sales Manager</label>
<select id="SalesManager" name="SalesManager">
<option value="7">James Morrison</option>
<option selected="selected" value="300">Ray Manzarek</option>
<option value="302">Robby Krieger</option>
<option value="302">John Densmore</option>
</select>
和這樣的動作:
[HttpPost]
public ActionResult SomeAction(FormCollection form)
{
...
}
我得到驗證ModelState
錯誤:SalesManager屬性爲。我怎樣才能接受一個int值,並擔心稍後實例化我的用戶(例如在ModelBinder中)。或者我剛剛接近這個錯誤?
難道有IValueProvider或ModelBinder的東西,我可以用在屬性級別來處理呢? – mxmissile 2011-03-03 17:52:32
@mxmissile,我不明白你。你有一個視圖模型=>使用強類型的助手,它將負責生成適當的標記。 – 2011-03-03 17:55:17