вторник, 22 ноября 2011 г.

Формирование URLa страницы или медиа-файла в Razor-функциях

В Composite C1 URLы страниц и медиа-файлов указываются определенным образом с помощью уникального идентификатора такой страницы или медиа-файла. При отображении страницы в браузере все ссылки, сформированные таким образом - замещаются на привычные URLы.

В коде или разметке обычно используются URLы с идентификаторами. В Razor-функции это можно сделать при помощи методов PageUrl и MediaUrl.

@inherits CompositeC1Contrib.RazorFunctions.CompositeC1WebPage
         
@using Composite.Data
@using Composite.Data.Types
@using CompositeC1Contrib.RazorFunctions

@functions {
    [FunctionParameter("Страница" , "Справка о параметре Страница")]
    public DataReference<IPage> aPage { get; set; }

    [FunctionParameter("Изображение" , "Справка о параметре Изображение")]
    public DataReference<IMediaFile> anImage { get; set; }      
}

<html>
  <head>
    <title></title>
  </head>

  <body>
  <a href="@Html.C1().PageUrl(@aPage.Data)">@aPage.Data.Title</a>
  <br />
  <img src="@Html.C1().MediaUrl(@anImage.Data)"  alt="Картинка №1"/>
    </body>
</html>

Входной параметр для PageUrl  может быть такого типа: IPage, GUID или string (GUID в виде строки).

Входной параметр для MediaUrl может быть такого типа: IMediaFile, GUID or string ("ключевой путь" (key path) к медиа-файлу в виде строки).

(продолжение следует) 

Комментариев нет:

Отправить комментарий