2016-07-01 124 views
0

我在下面有这个类,并且能够用数据填充它。 DelMaster和DelDetails有相关数据。 有关数据使用无序列表创建主详细信息页面

 public class Deliverables 
     { 
      public DeliverablesMaster DelMaster { get; set; } 
      public List<DeliverablesDetails> DelDetails { get; set; } 
     } 

以下没有担心是主人的属性。我将只显示两个领域

 public class DeliverablesMaster 
     { 
      public string ProjectDeliverablesId { get; set; } 
      public string ProjectId { get; set; } 
      public string DeliverableCategory { get; set; } 
      public string DeliverableText { get; set; } 
      public string DeliverableOrder { get; set; } 
      public string UpsizeTs { get; set; }   
     } 

下面是详细信息/儿童的性质和一行将显示所有字段

 public class DeliverablesDetails 
     { 
      public string ProjectDelivStatusId { get; set; } 
      public string ProjectDeliverableSID { get; set; } 
      public string PDSText { get; set; } 
      public string PDSCurrency { get; set; }   
     } 

我希望能够在显示此无序列表,父母在顶部作为标题,以及下面的孩子。我知道它看起来像下面的东西,但不知道如何把它放在一起。 如何将这些foreach语句放在一起?我更关心这些foreach语句。

 foreach() 
       { 
       <ul> 
        <li> 

        </li> 
        @foreach() 
        { 
         <li> 
          <ul> 
           <li> </li> 
           <li> </li> 
           <li> </li> 
           <li> </li>         
          </ul> 
         </li> 
        } 
       </ul> 
       } 

回答

0

其实你的班级的设计是错误的,如果有一个主/细节模型,它需要使用它的分层模型。看看这个:

public class DeliverablesMaster 
     { 
      public long DelMasterId {get; set;} 
      public string ProjectDeliverablesId { get; set; } 
      public string ProjectId { get; set; } 
      public string DeliverableCategory { get; set; } 
      public string DeliverableText { get; set; } 
      public string DeliverableOrder { get; set; } 
      public string UpsizeTs { get; set; } 

      public List<DeliverablesDetails> DelDetails { get; set; } 
     } 


    public class DeliverablesDetails 
     { 
      public string DelDetailId {get; set;} 
      public string ProjectDelivStatusId { get; set; } 
      public string ProjectDeliverableSID { get; set; } 
      public string PDSText { get; set; } 
      public string PDSCurrency { get; set; } 
      public long DelMasterId {get; set;} 
      public DeliverablesMaster DelMaster {get; set;} 

     } 

那么你可以使用的foreach来访问它们:

@foreach (var m in DeliverablesMaster) 
      { 
       <ul> 
       <li>     </li> 

       @foreach (var d in m.DelDetails) 
       { 

        <li> 
         <ul> 
          <li> </li> 
          <li> </li> 
          <li> </li> 
          <li> </li>         
         </ul> 
        </li> 

        } 
       </ul> 
      } 
+0

感谢您的评论。我需要让一个模型中的两个类都正确吗?我如何将这个结合在一个模型中。 – user2320476

+0

也许,如果我知道你想在一个模型中拥有这些,我会帮你的。在这个模型(分层模型)中,您可以使用主类来访问它们。 –

+0

这是真的,我可以看到。我会尝试并回复你。 – user2320476