Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何计算/目标用户控制占位符上的当前位置?_C#_Asp.net_Sitecore_Sitecore6_Sitecore7 - Fatal编程技术网

C# 如何计算/目标用户控制占位符上的当前位置?

C# 如何计算/目标用户控制占位符上的当前位置?,c#,asp.net,sitecore,sitecore6,sitecore7,C#,Asp.net,Sitecore,Sitecore6,Sitecore7,对于一个项目,我正在使用Sitecore CMS。HMTL输出 <div class="carousel-item" item-position="1"> ... </div> <div class="carousel-item" item-position="2"> ... </div> <div class="carousel-item" item-position="3"> ... </div>

对于一个项目,我正在使用Sitecore CMS。HMTL输出

<div class="carousel-item" item-position="1">
    ...
</div>
<div class="carousel-item" item-position="2">
    ...
</div>
<div class="carousel-item" item-position="3">
    ...
</div>

...
...
...
每个div元素表示占位符转盘上的Sitecore组件。属性项位置是Sitecore组件在占位符中的当前位置。请记住,必须先执行Sitecore规则,然后才能在网站上看到组件

有人知道我如何计算属性项位置(1、2、3等)吗

非常感谢


Jordy

最简单的方法可能是每次执行组件时手动计数,并将计数器值存储在
Sitecore.Context.Items
集合中,该集合为单个请求共享。大概是这样的:

public static int GetComponentCount()
{
    var counter = Sitecore.Context.Items["myCounter"] as int?;
    var count = counter.HasValue ? (int)counter : 0;
    count = count + 1;
    Sitecore.Context.Items["myCounter"] = count;

    return count;
}

然后使用此方法获取组件中的当前组件数。

您使用的是Sitecore MVC还是Web表单?