-5

Как заполнить таблицу элементами в коллекции списка (элемент: Год), используя двумерный массив? Коллекция списков была заполнена внешней базой данных с использованием запросов linq.Создать таблицу с использованием двумерного массива

ViewModel

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

Я абсолютно не понимаю, чего вы пытаетесь достичь ... – themarcuz

+2

Это нормально, что вы не понимаете. Код, размещенный OP, вряд ли имеет смысл. Это очень далеко от того, что можно считать действительным C#. Также он не показывал свои модели домена, поэтому мы могли только гадать, как они выглядят и какие свойства они содержат. Мы можем только надеяться, что этот вопрос будет улучшен. –

+1

жаль одну лодку, как и другие, звучит как напиток, заправленный ночной ночью :) –

ответ

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 

организовать подпункты однако ваш список приводится

затем в виде просто щелкните правой кнопкой List View в форме (listOfMovies) и добавить столбцы

Извините, если я неправильно понял вопрос но я думаю, что это то, что вам нужно?

0

Что цель 10x10 I, J?

Вы можете получить каждый MovieViewModel в OldMovies по списку [index], и этот индекс должен находиться в диапазоне от 0 до OldMovies.Count.

for(int i = 0; i < OldMovies.Count; i++) 
{ 
    var movie = OldMovies[i]; 
    //movie.Name 
    //movie.Year 
} 
Смежные вопросы