-6

如何使用二维数组填充列表集合(项目:年份)中的项目?列表集合由使用 linq 查询的外部数据库填充。

视图模型

public class TableViewModel
{       
    public List<MovieViewModel> Movies { get; set; }        
    public MyViewModel[,] MovieValues { get; set; }   
}

public class MyViewModel
{
    public string MovieValue { get; set; }        
}

 public class MovieViewModel 
{
    public string Id { get; set; }        
    public string Name { get; set; }
    public string Year { get; set; }   
}

控制器

TableViewModel item;
item=new TableViewModel();  
var AllMuvees = from d in db.MoviesTable     
          orderby d.Id                                            
          group d by d.Rating into  M                          
          select M;

List<MovieViewModel> OldMovies;
foreach (var a in M.AllMuvees)
{
 OldMovies.Add(new MovieViewModel()
 { 
    Id = g.MovieId.ToString(),
    Name =g.MovieName,
    Year = g.MovieYear.ToString()
 });
}


for (int i = 0; i < 10; i++)
 {
 for (int j = 0; j < 10; j++)
  {
    item.MovieValues[i, j] = new MyViewModel()
    { MovieValues = ***** 
(I need help here: I want to fill this with the Years from OldMovies)};      
   }
  }

 return View(item);
4

2 回答 2

0

10x10 i,j 的目的是什么?

您可以通过 list[index] 获取 OldMovies 中的每个 MovieViewModel,并且该索引必须介于 0 到 OldMovies.Count 之间。

for(int i = 0; i < OldMovies.Count; i++)
{
  var movie = OldMovies[i];
  //movie.Name
  //movie.Year
}
于 2012-05-24T09:17:25.563 回答
0

您是否尝试过查看 ListViewItem 然后填充列表视图?

如果没有,那么您可以轻松地使用数组列表,甚至可以将其填充到如下所示的 foreach 循环中?

foreach( var v in Muvees )
{ListViewItem movieToAdd = new ListViewItem();
 movieToAdd.Text = v.movieid; 
movieToAdd.SubItems.Add(v.rating); 
movieToAdd.SubItems.Add(v.movieName); 
listOfMovies.Items.Add( movieToAdd ).BackColor = Color.Green;}    //add colour just because you can

安排子项目,但您的列表已列出

然后在表单中右键单击表单中的列表视图(listOfMovies)并添加列

对不起,如果我误解了这个问题,但我认为这是你需要的?

于 2012-05-24T10:26:27.960 回答