C# 可以从foreachLoop Umbraco c中获取单个数据#

C# 可以从foreachLoop Umbraco c中获取单个数据#,c#,umbraco,umbraco7,umbraco-blog,C#,Umbraco,Umbraco7,Umbraco Blog,我的代码运行良好,但当我尝试获取每个funds=subpage.Name的数据时,我获取的是所有基金数据,而不是单个基金的数据。我在这里错过了什么?? 有人能帮我吗?对不起,我是刚到翁布拉科和c#的,管理这件事的最好方法是什么 现在是这样 (16) [{…}, {…},]... 0: {Fundo: "CURTO PRAZO", data: Array(21)} 1: {Fundo: "CA MONETARIO", data: Array(21)} ... In reality it shou

我的代码运行良好,但当我尝试获取每个funds=subpage.Name的数据时,我获取的是所有基金数据,而不是单个基金的数据。我在这里错过了什么?? 有人能帮我吗?对不起,我是刚到翁布拉科和c#的,管理这件事的最好方法是什么

现在是这样

(16) [{…}, {…},]...
0: {Fundo: "CURTO PRAZO", data: Array(21)}
1: {Fundo: "CA MONETARIO", data: Array(21)}
...

In reality it should be

(16) [{…}, {…},]...
0: {Fundo: "CURTO PRAZO", data: Array(4)}
1: {Fundo: "CA MONETARIO", data: Array(3)}
for example
...
这是我的密码

    var currentPage = Model.Content;

    var selection = Umbraco.Content(1448);

    @foreach (var page in selection.Children){

    if(page.Children.Count() > 0){ 

    foreach(var subpage in page.Children){

    var listaPdf = subpage.GetPropertyValue<IEnumerable<IPublishedContent>>("listaPdfsFundos");

         if(listaPdf == null) {

         listaPdf = new List<IPublishedContent>();}

        if(listaPdf != null){

        foreach(var row in listaPdf) {

        name = Umbraco.Field(row, "categoriaDoFundo").ToString();

        var id = Umbraco.Field(row, "documentos").ToString();

        var mediaItem = Umbraco.TypedMedia(id);

        url = mediaItem.Url;

        <script type="text/javascript">

       data.push({"Nome":"@name", "Url":"@url"}); 

        </script> 
         }

         <script type="text/javascript">

        list.push({"Fundo":"@subpage.Name", data }); 
        </script> 

              }

            }

        }

     }
var currentPage=Model.Content;
var选择=翁布拉科含量(1448);
@foreach(selection.Children中的变量页){
如果(page.Children.Count()>0){
foreach(page.Children中的var子页面){
var listaPdf=subpage.GetPropertyValue(“listaPdfsFundos”);
if(listaPdf==null){
listaPdf=新列表();}
if(listaPdf!=null){
foreach(listaPdf中的var行){
name=Umbraco.Field(第行,“分类基金”).ToString();
var id=Umbraco.Field(第行,“documentos”).ToString();
var mediaItem=Umbraco.TypedMedia(id);
url=mediaItem.url;
数据推送({“Nome”:“@name”,“Url”:“@Url”});
}
push({“Fundo”:“@subpage.Name”,data});
}
}
}
}

您应该使用UmbracoHelper获取IPPublishedContent,然后您可以获取内容页的子项并访问各个属性

详情请参阅下文;在我的示例中,我的测试内容id是我的主页的nodeId,并查看如何获取我的主页的子项和第一个子项的属性-因此请根据此更新您的代码,以获取更多详细信息

            var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
            var testContentId = 1353; // This is your umbraco node id of your content page
            var publishedContent = umbracoHelper.TypedContent(testContentId);

            if (publishedContent != null)
            {
                foreach (var child in publishedContent.Children)
                {
                    // This is where you can reach the Children of this child as well as individual properties of this child
                    if (child.HasProperty("emailAddress_Contact_Information"))
                    {
                        var emailAddressContactInformation = child.GetProperty("emailAddress_Contact_Information");
                    }
                }
            }