пятница, 25 ноября 2011 г.

Выполнение других функций в Razor-функциях

В текущей реализации Razor-функций существует два вспомогательных метода (helper methods) для выполнения других C1-функций в Razor-функции.

Html.C1().Function

Перегруженный метод Html.C1().Function во всех своих трех вариантах имеет обязательный параметр -  имя вызываемой функции.

@Html.C1().Function("My.Demo.Function") ;

Для указания параметров вызываемой функции нужно воспользоваться одним из двух перегруженных методов.

В таком случаем параметры можно указать как объект:

@Html.C1().Function("My.Demo.Function", new {height=300, width=400}) ;

или как Dictionary<string, string>:

@Html.C1().Function("My.Demo.Function",
    new Dictionary<string, object>()
    {
        { "height",   300 },
        { "width",  400 }
    })

Functions.ExecuteFunction

Если нужно выполнить функцию, которая не возвращает никакого содержимого, можно воспользоваться  другим вспомогательным методом: Functions.ExecuteFunction.

@{
    Functions.ExecuteFunction("My.Demo.Function");
}

Если вы установили поддержку Razor-функций в C1 (пакет  Contribution.CompositeC1Contrib.RazorFunctions версии 0.9.2 и выше),   то можете рассмотреть пример вызова функций в /App_Data/Razor/Examples/ExecuteOtherFunctions.cshtml.

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

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