我已將一個自定義字段添加到了名爲的相關圖像,我想在自定義新聞列表MVC模板中顯示該自定義字段。什麼對象類型用於Sitefinity中的單個相關圖像屬性?
注意:自定義字段是一個與「可以上傳或選擇多個圖像」限制相關的媒體(圖像,視頻,文件)字段。
我可以通過自定義字段循環如下檢索圖像的URL:
@foreach (var relatedItem in item.Fields.RelatedImage)
{
<li>@relatedItem.Fields.MediaUrl</li>
}
上面的代碼工作和顯示的URL。
這樣的代碼輸出正確的值:當設置的限制,以使上述代碼拋出異常,因爲「只有1圖像可以上傳或選擇了」用於@item.Fields.RelatedImage
變化模型
@item.Fields.RelatedImage.Length
然而,這些屬性不存在。
我需要的是在列表中只顯示每個新聞項目的一個圖像,但是當我切換到「Only 1 image ...」限制模式時,我無法弄清楚模型的外觀或如何獲得其財產。所以,下面的代碼將無法正常工作:
@item.RelatedItem("RelatedImage").Fields.MediaUrl
所以現在對我來說,問題是一個令人沮喪的:我怎麼知道被傳遞到我的模板/圖什麼型號?我試過輸出各種GetType().ToString()
選項,但我反覆得到的是ItemViewModel,它並沒有幫助!
編輯 - 下面的代碼實際工作:
<img src="@Html.Raw(item.Fields.RelatedImage.Fields.MediaUrl)" />
但是,這是令人沮喪很難弄清楚。如何找出Type RelatedImage是什麼。 Fields屬性是動態類型,這使得事情更加棘手。
謝謝@OllieP。問題,你從哪裏得到這種明確的信息?我查看了Telerik的文檔,發現了這種情況。 – Jacques
不幸的是,文檔令人失望地缺乏。您可以使用Sitefinity論壇,通常會在幾天內得到答覆。如果你不知道任何具有現有知識的人,那麼一些實驗和dotPeek的副本可以讓dlls有更多的好處。 –