0
我已經定義了以下選擇列表:默認選定值
<%= this.Select("Scope")
.Options(Scopes.AllValues) // static property to get all possible values
.FirstOption("Select scope")
.Class("required")
.Selected(Model.Scope) %>
其中Scope
是這樣定義一個枚舉:
public enum Scope
{
Full,
Partial
}
我使用此上用戶控件,它爲一個創建/編輯窗體呈現所有表單元素,所以我希望這可以在有底層模型時以及模型只是一個沒有設置屬性的空editmodel時使用。但是,因爲Scope
是一個結構體,所以在編輯模型實例化時,它被初始化爲默認值(這是第一個定義的枚舉值Full
)。因此,從不選擇Select value
選項。
我知道Model.ID == 0
爲新對象,而Model.ID != 0
爲現有對象,所以我可以用它來確定應該顯示什麼。但是,如果我做
.Selected(Model.ID != 0 ? Model.Scope : null) // how do I indicate the first item?
我得到一個編譯錯誤,因爲有null
和Scope
之間沒有轉換(因爲Scope
是一個結構)。
我該如何做到這一點?