Я новичок в С#, только что начал 2 дня назад, потому что мне нужно создать простой проект для моих классов кодирования в университете, к сожалению, у нас было 3 дня, чтобы закончить код, поэтому я на один день отстаю, но это не имеет значения, Я создал список кортежей, используя код fount @whatacode.wordpress.com.
public class TupleList<int, string, string, int, int, string, int> : List<Tuple<int, string, string, int, int, string, int>>
{
public void Add(int IDL, string AlbNmL, string ArtL, int RelDL, int TrAmnL, string LocL, int RatL)
{
Add(new Tuple<int, string, string, int, int, string, int>(ID, AlbNm, Art, RelD, TrAmn, Loc, Rat));
}
}
Мне нужно создать список, если это первое дополнение к кортежу, поэтому я использовал if
if (currid == 0)
{
var Albums = new TupleList<int, string, string, int, int, string, int>
{
{ID, AlbNm, Art, RelD, TrAmn, Loc, Rat},
};
}
Мой идентификатор, AlbNm, Art, RelD, TrAmn, Loc, Rat - результат чтения и т.д., Не имеет большого значения. (или делает это?) Я использую индикатор в качестве индикатора, будь он первым или нет (он начинается с 0 и является ++ в конце функции добавления.
Теперь я спрашиваю, как использовать метод ADD для моего класса TupleList, чтобы добавить их (ID, AlbNm, Art, RelD, TrAmn, Loc, Rat, которые я получил из строк readline) в качестве следующего кортежа. я использовал
if(currid > 0)
но я действительно не знаю, что положить в это, если. Надеюсь, мой вопрос понятен в любом% и что кто-то может мне помочь :) Спасибо заранее.
Было бы намного лучше создать класс альбома и составить список альбомов
public class Album
{
public string Name {get;set;}
public string Artist {get; set;}
public Album(string _name, string _artist)
{
Name = _name;
Artist = _artist;
}
}
Album example = new Album("a", "good idea");
List<Album> listOfAlbums = new List<Album>();
listOfAlbums.Add(example);
Во-первых, вы можете просто использовать List<Tuple<int, string, string, int, int, string, int>>
Во-вторых, ваш список доступен только в пределах фигурных скобок {} оператора if (currid == 0). Это означает, что он не существует вне его, поэтому вам нужно объявить его за пределами if. Затем вы можете использовать Add. Но также обратите внимание, что Tuple имеет метод Factory:
List<Tuple<<int, string, string, int, int, string, int>> Albums;
if (currid == 0) {
Albums = new TupleList<int, string, string, int, int, string, int>();
}
Albums.Add(Tuple.Create(ID, AlbNm, Art, RelD, TrAmn, Loc, Rat));