【发布时间】:2014-05-20 11:25:40
【问题描述】:
I am new to Umbraco. I am currently using Umbraco 7.0. I have created a Razor
macro with a parameter that will access property from home template page. In My Macro
due to space only first word of string displays and rest of the string is not
displayed. property
name is sliderHeading with value : My First Slide. Macro inserted in the template is
as follows :-
@Umbraco.RenderMacro("HomePageSlider", new {mediaId="1084",
sliderHeading=@Umbraco.Field("sliderHeading")})
// where sliderHeading is macro parameter.
Macro definition :-
@inherits umbraco.MacroEngines.DynamicNodeContext
@if (Parameter.mediaId != null)
{
var mediaFolder = Library.MediaById(Parameter.mediaId);
if (mediaFolder.Children.Any())
{
foreach (var mediaItem in mediaFolder.Children)
{
<div class="cycle-slide" style="background-
image:url(@mediaItem.umbracoFile)" data-cycle-title=@Parameter.sliderHeading
data-cycle-desc="Remember, you are not limited to image elements. You can display
other HTML too." data-cycle-link="#"></div>
}
}
}
因此,在宏中,参数值通过以下方式访问:- data-cycle-
title=@Parameter.sliderHeading.
现在我的问题是 如果属性值为:-“我的第一张幻灯片”。然后它会在页面上给出错误的输出“我的”。 如果属性值为:-“我的第一张幻灯片”,中间有 html 空格 (&nbbsp;) 然后它 将在页面上给出正确的输出“我的第一张幻灯片”。
我应该如何访问宏中的参数,以便它给出正确的输出。
【问题讨论】:
标签: razor parameters umbraco