Инициализируйте список < T > со встроенным определением < T >

Вы можете использовать функцию отправки :

$("#ajax-contact").submit(function(e) {
    if (!yourValidationFunction()) {
        e.preventDefault();
    }
});

5
задан 23.02.2019, 00:17

3 ответа

C # 7 представляет кортежи , поэтому вы можете сделать это:

var list = new List<(int id, string name)>();
list.Add((3, "Bob"));

var (id, name) = list[0];

var entry = list[0];
string s = $"{entry.name} has ID {entry.id}";

foreach (var (id, name) in list)
{

}

До C # 7 вы можете использовать старый тип Tuple, который немного более грязный: [ 115]

var list = new List<Tuple<int, string>>();
list.Add(Tuple.Create(3, "Bob"));

foreach (var item in list)
{
    int id = item.Item1;
    string name = item.Item2;
}
0
ответ дан 20.05.2019, 13:19
  • 1
    Да, старый кортеж сосет. Я ненавидел .Item1 так много I' ve никогда не использовал их:-) +1 для того, чтобы быть быстрее, чем я:-), – Zohar Peled 23.02.2019, 00:19
  • 2
    К вашему сведению, этот doesn' t работают если < 4 символьных строки обеспечиваются – UnhandledExcepSean 15.03.2019, 03:42

В c # 7.0 и выше вы можете использовать кортежи значений - синтаксис практически идентичен:

var items = new List<(int id, string name)>();
0
ответ дан 20.05.2019, 13:19
  • 1
    Это обращается только к заключительной части формата. Это не отвечает на вопрос преобразования. Кроме того, формат () должен использоваться экономно. – John Cappelletti 15.03.2019, 03:06

Также вы можете сделать это следующим образом:

var list = new[] { new { Id = 1, Name = "name" } }.ToList();

list.Add(new { Id = 2, Name = "name2" });

foreach (var item in list)
{
    int id = item.Id;
    string name = item.Name;
}

Ссылки: Анонимные типы , Массивы с неявным типом , Метод расширения ToList

0
ответ дан 20.05.2019, 13:19
  • 1
    Могло бы стоить упомянуть анонимные типы ;-) отредактированный, потому что я вставил неправильную гиперссылку – ColinM 23.02.2019, 00:33
  • 2
    Вы don' t должен создать фиктивный объект (который мог бы быть дорогим если слишком много данных внутри). sharplab.io/… – Vlad 23.02.2019, 00:33
  • 3
    @ColinM благодарит указать. – SᴇM 23.02.2019, 00:49
  • 4
    @Vlad, который я согласовываю, я просто, попытался сохранить его простым (быстрый ответ). – SᴇM 23.02.2019, 00:50
  • 5
    Кроме того, HH даст Вам 24-часовое время. MM даст Вам МЕСЯЦ не минута, и Вы забыли, что tt для/PM – John Cappelletti 15.03.2019, 03:09

Теги

Похожие вопросы