我有一個模型,它有幾個常規屬性,如strings
和integers
,它也有2 ilist(of string)
屬性。DisplayForModel不呈現我的iList(字符串)
我這些看起來像這樣,被稱爲ListOfString.vbhtml
做出了DisplayTemplate
:
@ModelType List(Of String)
@If Model IsNot nothing And Model.Any Then
@<ul>
@For i As Integer = 0 To Model.Count
@<li>@Html.Raw(Model(i))</li>
Next
</ul>
end if
這是怎樣的性質裝飾:
<UIHint("ListOfString")>
<Display(Name:="Options", ResourceType:=GetType(WebText))>
Public Property Options As List(Of String) = New List(Of String)
然後,在我看來,我打電話@Html.DisplayForModel()
。期望我的所有屬性都由默認顯示模板寫出,而我的自定義屬性是列表屬性的列表。
所有不是IList(of string)
的屬性都被渲染出來(它很醜,但這是一個單獨的問題)。
我試着在項目庫中的Views/Shared/DisplayTemplates
文件夾和Area/Views/controllername/DisplayTemplates
文件夾中顯示模板,兩者都不起作用。
列表DO在它們中有值,並且模板沒有被渲染,因爲我把樸素的「hello」放在它們中,它沒有顯示出來。所以這不是模型綁定出錯的情況。
我完全不在我的搖桿期待這個工作?我的印象是這是關於顯示模板和其他東西的偉大之處之一。
你有兩個IList或兩個List? –
要麼,或者,不以任何方式工作。理想情況下,他們會是'Ilist()',但是如果我只用'List'就可以得到它,那我就沒問題。 – Patricia
渲染頁面的結果是什麼?請把它放在一邊。 –