Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.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/2/.net/22.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# Umbraco Macro can';在对后端的媒体树执行排序之前,无法查看媒体项_C#_.net_Umbraco_Umbraco7 - Fatal编程技术网

C# Umbraco Macro can';在对后端的媒体树执行排序之前,无法查看媒体项

C# Umbraco Macro can';在对后端的媒体树执行排序之前,无法查看媒体项,c#,.net,umbraco,umbraco7,C#,.net,Umbraco,Umbraco7,我在我的一个Umbraco 7.3.7网站上有一个奇怪的行为。我有几个razor宏,它们在媒体树中的文件夹和文件中循环,并写出链接以查看子文件夹或文件链接 该宏在站点上运行了好几天,但由于未知原因,宏在媒体树中找不到任何项目。如果我登录到网站的后端,我可以浏览媒体树,看到文件/文件夹仍然存在 我可以“重新加载节点”,但这没有效果。宏仍不显示项目。但是,如果我右键单击媒体树中的文件夹并选择“排序”,则会使文件夹内容在宏输出中再次可见 我必须对媒体树中的每个文件夹进行排序,对顶级文件夹进行排序并不意

我在我的一个Umbraco 7.3.7网站上有一个奇怪的行为。我有几个razor宏,它们在媒体树中的文件夹和文件中循环,并写出链接以查看子文件夹或文件链接

该宏在站点上运行了好几天,但由于未知原因,宏在媒体树中找不到任何项目。如果我登录到网站的后端,我可以浏览媒体树,看到文件/文件夹仍然存在

我可以“重新加载节点”,但这没有效果。宏仍不显示项目。但是,如果我右键单击媒体树中的文件夹并选择“排序”,则会使文件夹内容在宏输出中再次可见

我必须对媒体树中的每个文件夹进行排序,对顶级文件夹进行排序并不意味着显示子文件夹中的内容

该网站然后运行了几天,然后它突然再次发生,我必须排序所有的文件夹

请问有人能帮忙找出是什么原因造成的吗

还有什么方法可以通过编程方式循环浏览媒体树中的所有文件夹,并对每个文件夹进行排序,这样我就不必手动依次对每个文件夹进行排序

@inherits Umbraco.Web.Macros.PartialViewMacroPage


@{ var mediaId = 1062; }

@if (mediaId != null)
{
    @* Get all the media item associated with the id passed in *@
    var media = Umbraco.Media(mediaId);
    var selection = media.Children("Folder");

    if (selection.Any())
    {
        var count = selection.Count();
        var colitems = count / 3;
        var colmod = count % 3;
        if (colmod != 0)
        {
            colitems += 1;
        }
        var loopcount = 1;

        <!--<p>Count: @count @colitems</p>-->
        <div class="row">
            @foreach (var item in selection)
            {
                if (loopcount == 1)
                {
                    @:<div class="col-sm-4">
                        @:<ul class="HomeFolderList">
                }
                <li>
                    <!--<h3><a href="javascript:showChildren(@item.Id);" title="@item.Name">@item.Name</a></h3>-->
                    <h3><a href="/GetCategory/?mid=@item.Id&category=@Server.UrlEncode(item.Name)" title="@item.Name">@item.Name</a></h3>

                    @* GetChildFolders(@item.Id)*@
                </li>

                loopcount += 1;

                if (loopcount == colitems + 1)
                {
                    @:</ul>
                    @:</div>

                    loopcount = 1;
                }


            }
            @* end of for loop, check if we need to close the list and column *@
            @if (loopcount != colitems + 1 && loopcount != 1)
            {
                @:</ul>
                @:</div>
            }
        </div><!-- / row -->

    }
}
@继承Umbraco.Web.Macros.PartialViewMacroPage
@{var mediaId=1062;}
@if(mediaId!=null)
{
@*获取与传入的id关联的所有媒体项*@
var媒体=Umbraco.media(媒体ID);
var selection=media.Children(“文件夹”);
if(selection.Any())
{
var count=selection.count();
var colitems=计数/3;
var colmod=计数%3;
if(colmod!=0)
{
大肠菌群+=1;
}
var循环计数=1;
@foreach(选择中的var项目)
{
if(loopcount==1)
{
@:
@:
    }
  • @*GetChildFolders(@item.Id)*@
  • 循环计数+=1; if(loopcount==colitems+1) { @:
@: 循环计数=1; } } @*结束for循环,检查是否需要关闭列表和列*@ @if(loopcount!=colitems+1&&loopcount!=1) { @: @: } } }
暗中拍摄:尝试通过删除应用程序数据/TEMP并重新启动应用程序池,让Umbraco重建索引。首先备份。同意重建索引(您也可以转到开发者>>检查管理选项卡>>外部索引器>>重建索引)。重新发布站点(或者仅仅是给您带来问题的节点)也有帮助(本质上这就是排序为您所做的事情-重新编制索引/重新发布):尝试通过删除App_Data/TEMP并重新启动App Pool,让Umbraco重建索引。首先备份。同意重建索引(您也可以转到开发者>>检查管理选项卡>>外部索引器>>重建索引)。重新发布站点(或者只是发布问题的节点)也会有所帮助(这基本上就是排序为您所做的事情-重新编制索引/重新发布)