Razor UMBRACO显示PDF文件

Razor UMBRACO显示PDF文件,pdf,razor,umbraco,Pdf,Razor,Umbraco,我在umbraco 6中有以下内容 我在“媒体”部分有一个文件夹结构: 媒体 -档案 --PDF PDF文件夹的ID为“2465” 如何让Umbraco显示PDF文件夹中的所有PDF文件?我已经设置了模板、文档类型和宏 宏别名称为ViewPDF,并指向ViewPDF.cshtml文件。我只需要CSHTML代码。到目前为止我所尝试的都不起作用 下面是我试过的一段代码: @inherits umbraco.MacroEngines.DynamicNodeContext @使用umbraco.mac

我在umbraco 6中有以下内容

我在“媒体”部分有一个文件夹结构:

媒体 -档案 --PDF

PDF文件夹的ID为“2465”

如何让Umbraco显示PDF文件夹中的所有PDF文件?我已经设置了模板、文档类型和宏

宏别名称为ViewPDF,并指向ViewPDF.cshtml文件。我只需要CSHTML代码。到目前为止我所尝试的都不起作用

下面是我试过的一段代码:

@inherits umbraco.MacroEngines.DynamicNodeContext
@使用umbraco.macro发动机

@{ int mediaFolderId=2465

DynamicMedia folder = new DynamicMedia(mediaFolderId);

    <div class="ViewPDF">
        @foreach (dynamic media in folder.Children.Items)
    {
            if (media.ContentType.Alias  == "ViewPDF")
            {

                  <a href="@media.umbracoFile"><img src="css/pdf.png" alt="ViewPDF" /></a>

            }
    }
    </div>   
DynamicMedia文件夹=新的DynamicMedia(mediaFolderId);
@foreach(文件夹.Children.Items中的动态媒体)
{
如果(media.ContentType.Alias==“ViewPDF”)
{
}
}
}


提前感谢

尝试使用folder.Children而不是folder.Children.Items

我会这样做:

var myContent = Umbraco.TypedContent(id); -> For content nodes.
这将返回
IPublishedContent
。因此,您可以通过以下方式进行查询:

var something = myContent.GetProperty("myAlias")
检查一下

在U6中,您还可以使用

编辑-Snipet:

@{
    var rootNode = Umbraco.TypedMedia(1078);
    foreach (var item in rootNode.Children)
    {
         <p>@item.DocumentTypeAlias - @item.Id - @item.GetPropertyValue("umbracoFile")</p>
    }
}

这将只返回按“CreateDate”排序的“文件”节点。

删除。项没有帮助。代码是否正确,我是否使用了正确的属性等。?是否需要更多信息才能给出更好的答案?只是为了确定,您的pdf文件使用哪种媒体类型?您好,谢谢您的回答。我在这方面遇到了一些问题,你能帮我写下完整的代码片段吗?这样我就能看出我在尝试中做错了什么。谢谢你花时间回答我!:)我试图在开始时使用:@inherits Umbraco.Web.Macros.PartialViewMacroPage,但返回时带有错误:d:\Web\localuser\MYWEBPAGE\public\u html\macroscript\635221538203258173\u ViewPDFv2.cshtml(8):错误CS1061:“Umbraco.Core.Models.IPublishedContent”不包含“GetPropertyValue”的定义,并且找不到接受类型为“Umbraco.Core.Models.IPublishedContent”的第一个参数的扩展方法“GetPropertyValue”(是否缺少using指令或程序集引用?)。有什么建议吗?
rootNode.Children.Where(x => x.DocumentTypeAlias.Equals("File"))
   .OrderByDescending(x => x.CreateDate))