2013-02-19 78 views
10

有人能幫助我澄清時使用下面的(他們看起來都差不多,我和混亂):Sitecore的MVC渲染類型澄清

  1. 項目渲染
  2. 視圖中呈現
  3. 控制器渲染
  4. 方法渲染
  5. XSLT渲染
  6. 渲染參數
  7. 任何其他

回答

19

項目渲染

這是一個方式問了一段內容(項目)來表現自己。內容包含應該如何呈現的信息。

據我所知,這並沒有被廣泛使用,也沒有很好的文檔記錄 - 但我相信功能本身可以預測Sitecore MVC。

查看更多在這裏: http://www.sitecore.net/unitedkingdom/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2012/06/MVC-Item-Renderings-in-the-Sitecore-ASPNET-CMS.aspx

視圖中呈現

基本上這是一個Razor視圖。 Sitecore爲視圖提供了默認的控制器和模型。該模型可以通過更改mvc.getModel管道進行自定義。

當您要呈現不需要任何重要業務或表示邏輯的項目內容時使用此項。

控制器渲染

與控制器使您提供控制器,模型和視圖。在您的渲染定義項目上,您可以指定Sitecore應該使用什麼操作來渲染組件。

當您需要渲染依賴外部數據和/或需要大量業務或表示邏輯的內容時使用此功能。任何與表單提交有關的事情都可能屬於這一類。

方法渲染

將輸出到一個靜態方法的調用的返回值。

據我所知,這並沒有廣泛使用,也沒有很好的記錄 - 我想它可以用於整合傳統內容。

更多,請參閱: http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2012/03/More-Than-Anyone-Ever-Wanted-to-Know-About-Method-Renderings-in-the-Sitecore-ASPNET-CMS.aspx

XSLT渲染

渲染一個Sitecore的XSLT一個Sitecore的MVC頁面上。這種渲染類型與使用XSLT作爲模板引擎(而不是Razor)的View Rendering填充了相同的空間。

如果您有一個您不想重寫的現有Sitecore XSLT組件庫,請使用此選項。就我個人而言,如果從頭開始,View Renderings做no/low邏輯組件比較合適。

地址渲染

渲染一個HTTP GET請求到當前頁面的響應。

如果您需要屏幕抓取另一個系統的HTML,請使用此選項。在遷移遺留站點時,這也可以用作轉換工具。可以在某些情況下使用,以避免令人尷尬的iframe綜合徵。

查看更多在這裏: http://www.sitecore.net/unitedkingdom/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2012/03/All-About-URL-Renderings-in-the-Sitecore-ASPNET-CMS.aspx

渲染參數

這不是一個渲染類型和渲染上了自己的東西不提供設施。渲染參數用於控制渲染的行爲。適用於所有上述呈現類型。

+0

謝謝@herskinduk,非常詳細的答案。請問在哪裏可以找到以上細節,因爲在SDN上我找不到這樣的東西。 – 2013-02-25 11:33:17

+0

我相信目前在SDN上可用的Sitecore MVC文檔很詳細。這就是爲什麼我在這裏發佈了一個非常詳細的答案。 – herskinduk 2013-02-26 10:53:28