2014-10-02 76 views
0

我的班级是Acessing导航类属性

public partial class Team 
    { 
     public Team() 
     { 
      this.Trials = new HashSet<Trials>(); 
      this.Users = new HashSet<Users>(); 
     } 

     public int TeamId { get; set; } 
     public string TeamName { get; set; } 
     public string TeamDescription { get; set; } 
     public virtual ICollection<Trials> Trials { get; set; } 
    } 

,并在视图当显示视图它显示了试验的对象我想试用级的accessthe attirbutes像

@model Project.Classes.Team 

<td> 
     @for (int i = 0; i < Model.Trials.Count; i++) 
     {     
       @Html.DisplayFor(x => Model.Trials.ElementAt(i).Name) 
       @Html.HiddenFor(x => Model.Trials.ElementAt(i).Name) 
       @Html.HiddenFor(x => Model.Trials.ElementAt(i).TrialID) 
       @Html.CheckBoxFor(x => Model.Trials.ElementAt(i).isChk) 
      <br />    
     } 
</td> 

在模型和显示窗体上,但是当表单被张贴时,然后在控制器我没有得到任何价值的试验它显示0试验...我认为我在绑定循环中做了一些错误...

任何帮助表示感谢......

+0

你没有在你的问题的代码中的形式?否则,这是你的问题。 – 2014-10-02 07:56:33

回答

0

通过改变团队工作来了解它的工作。除了使用

public virtual ICollection<Trials> Trials { get; set; } 

我改成了IList的

public virtual IList<Trials> Trials { get; set; } 

和评论的

//this.Trials = new HashSet<Trials>(); 

,并在视图

<td> 
     @for(int i=0; i<Model.Trials.Count; i++) 
     { 

       @Html.DisplayFor(x => x.Trials[i].Name) 
       @Html.HiddenFor(x => x.Trials[i].Name) 
       @Html.HiddenFor(x => x.Trials[i].TrialID) 
       @Html.CheckBoxFor(x => x.Trials[i].isChk) 
      <br /> 

     }  

       </td> 

现在我得到真正的模型暴食团队和试验的价值方队........