I am having some trouble with accessing variables, here in this case Setvariable. When I go inside loop, variable doesn't exists. Anyone have any insight on this. Appreciate your help
Below is my code section in template. Would you please help when you get a chance? Thanks.
<!-- TemplateBeginRepeat name="Component.Fields.section" -->
@@SetVariable("columnSectionIndex", "${TemplateRepeatIndex}")@@
Inline Value @@GetVariable("columnSectionIndex")@@ Variable value can be accessed
<!-- TemplateBeginRepeat name ="Field.links" -->
Inside Loop Value @@GetVariable("columnSectionIndex")@@ //Not getting declared variable //value here. Says variable doesn’t exist in ContextVariables.
<!-- TemplateBeginRepeat name ="Field.linkimages" -->
<!-- TemplateEndRepeat -->
<!-- TemplateEndRepeat -->
<!-- TemplateEndRepeat -->
Output
Variable Added Successfully
Inline Value 0
Inside Loop Value Variable doesn't exist
My dwt code
[TemplateCallable()]
public string SetVariable(string variableName, string value)
{
//Remove the old variable and set the new variable
if (_Engine.PublishingContext.RenderContext.ContextVariables.Contains(variableName))
{
_Engine.PublishingContext.RenderContext.ContextVariables[variableName] = value;
return "Variable Modified Successfully";
}
else
{
_Engine.PublishingContext.RenderContext.ContextVariables.Add(variableName, value);
return "Variable Added Successfully";
}
}
[TemplateCallable()]
public string GetVariable(string variableName)
{
//Get the varialbe
if (_Engine.PublishingContext.RenderContext.ContextVariables.Contains(variableName))
return _Engine.PublishingContext.RenderContext.ContextVariables[variableName].ToString();
else
return "Variable doesn't exist";
}