使用for循环在umbraco中传递数组的字符串值

时间:2013-02-01 06:14:59

标签: c# razor for-loop umbraco

我试图将数组值逐个传递给图像

<img src="@crops.Find("@name", "boxes[0]").url" alt="" />

例如第一次框[0] = box-1x1,类似于

foreach (var node in Model.Children)

循环运行第二次框值应该是方框[1],这是方框2x1,我只想到一种方法如何运行循环以将这些值传递8次,因为数组大小为0-8

 @{ @* Initialize box styles:list.Add(node.UrlName);*@
    string[] boxes = { "box-1x1", "box-2x1", "box-1x1" , "box-2x1" ,"box-2x2", "box-1x2", "box-1x1" , "box-2x1","box-1x1" };
    var list = new List<string>();
    foreach (var node in Model.Children)
        {
            dynamic croping = @Model.mainImage.mediaItem.Image.mediaCropper;
            foreach (dynamic crops in croping)
                {   
                    if (crops.GetType().ToString() != "System.String")
                            {   
                                <img src="@crops.Find("@name", "boxes[0]").url" alt="" />
                            }   
                }   
        }

 }

任何人都可以向我提供任何帮助或建议。 任何帮助将不胜感激 感谢

1 个答案:

答案 0 :(得分:0)

如果您想在循环中使用索引,请使用for循环,而不是foreach。 或者,在int index = 0循环之前定义foreach变量,并在每次迭代后将其提前1。

例如:

int index = 0;
foreach (var node in Model.Children)
{
    // Do your stuff
    // ...
    <img src="@boxes[index]" />
    // ...

    index++;
}