使用ASP.NET MVC & Spark,我有一個視圖列出了大量搜索。該視圖的頂部有如下聲明:在使用Spark視圖引擎的部分視圖中使用不同的viewmodel
<viewdata model="IEnumerable<SearchModel>" />
在同一個搜索頁面,我也使部分被用作一個彈出窗口,使用戶可以添加新的搜索內容。
我的問題是:在局部視圖我想利用強類型的HTML輔助的,寫:在的頂部
<viewdata model="CreateSearchModel" />
:
${Html.TextBoxFor(model => model.SearchPhrase)}
但當我添加其他部分視圖文件,Spark失敗只能聲明一個viewdata模型。
我可以使用普通的HTML幫助程序,但是我怎麼能在這個局部視圖中使用強類型的HTML幫助程序呢?還是有更好的方法呢?
非常感謝,這工作。出於好奇,這是Spark的限制嗎? – Martin
是的,它是Spark限制。所有使用的partials都在編譯時包含在生成的頁面.cs中,所以只有一個Page類和一個Model類型。當你使用RenderPartial時,局部在運行時渲染,因此沒有限制。所以我會說,這不是Spark限制 - 它是Spark的附加功能,它有自己的限制;-) – queen3