2013-06-14 2 views
0

아래의 코드에서 AttributeValueInfoEntityAttributeValueExportList에 추가하려고 시도했지만 코드에 //largeExportList.AttributeExportList을 넣은 곳의 ArticleAttributeExportLarge 개체의 속성으로 나타나지 않습니다.중첩 된 개체 목록, 마지막 목록에 액세스 할 수 없습니까?

내가 잘못했거나 C#에서 중요한 중첩 규칙을 놓치고 있습니까?

public partial class Export_Articles_Default : System.Web.UI.Page 
{  
    protected void Page_Load(object sender, EventArgs e) 
    { 
      ArticleInfoEntity[] articleInfoList = ArticleInfoFactory.Instance.ListInfo(244); 
      List<ArticleExportLarge> list = new List<ArticleExportLarge>(); 

      foreach (ArticleInfoEntity aie in articleInfoList) 
      { 
       ArticleExportLarge largeExportList = new ArticleExportLarge(aie); 
       largeExportList.AttributeExportList = new List<ArticleAttributeExportLarge>(); 

       List<AttributeInfoEntity> attributeInfoList = AttributeInfoFactory.Instance.ListByArticle(aie.ArticleId); 


       foreach (AttributeInfoEntity attributeInfo in attributeInfoList) 
       { 
        largeExportList.AttributeExportList.Add(new ArticleAttributeExportLarge(attributeInfo)); 
        List<AttributeValueInfoEntity> ArticleValueInfoList = AttributeValueInfoFactory.Instance.ListByArticleAndAttribute(aie.ArticleId, attributeInfo.AttributeId); 

        foreach (AttributeValueInfoEntity avie in ArticleValueInfoList) 
        { 
         //largeExportList.AttributeExportList 
        } 
       } 

       list.Add(largeExportList); 
      } 
     } 
} 

public class ArticleExportLarge 
{ 
    private ArticleInfoEntity articleInfo; 
    private List<ArticleAttributeExportLarge> attributeExportList; 

    public ArticleExportLarge(ArticleInfoEntity articleInfo) 
    { 
     this.articleInfo = articleInfo; 
    } 

    [XmlElement(ElementName = "attributeList")] 
    public List<ArticleAttributeExportLarge> AttributeExportList 
    { 
     get { return attributeExportList; } 
     set { attributeExportList = value; } 
    } 

} 

public class ArticleAttributeExportLarge 
    { 
     private AttributeInfoEntity attributeInfo; 
     private List<ArticleAttributeValueExportLarge> attributeValueExportList; 

     public ArticleAttributeExportLarge(AttributeInfoEntity attributeInfo) 
     { 
      this.attributeInfo = attributeInfo; 
     } 

     [XmlElement(ElementName = "attributeValueList")] 
     public List<ArticleAttributeValueExportLarge> AttributeValueExportList 
     { 
      get { return attributeValueExportList; } 
      set { attributeValueExportList = value; } 
     } 
    } 

public class ArticleAttributeValueExportLarge 
{ 
    private AttributeValueInfoEntity attributeValueExportEntity; 

    public AttributeValueInfoEntity AttributeValueExportEntity 
    { 
     get { return attributeValueExportEntity; } 
     set { this.attributeValueExportEntity = value; } 
    } 

} 

답변

0

내 실수가 발견되었습니다. 해당 목록의 개체에 액세스하려면 보조 목록 largeExportList.AttributeExportList을 반복해야합니다.

관련 문제