Лямбда-выражение с && - PullRequest
       0

Лямбда-выражение с &&

0 голосов
/ 31 января 2019

Я пытаюсь создать лямбда-выражение с "&&", но получаю сообщение об ошибке:

Ошибка CS1003 Синтаксическая ошибка, ',' ожидается

Вот мой код.

   using (var db = new SQLite.SQLiteConnection(dbPath))
        {
            string candidateResult = candidatedetails[0].ToString();
            string fileResult = candidatedetails[1].ToString();

            var list = db.Table<Candidates>().ToList();

            var cand = db.Table<Candidates>().Where(p => p.CandidateName == candidateResult && p => p.FileIdentification == fileResult);
            foreach (Candidates can in cand)
            {
                string[] FileIDSplit = can.FileIdentification.Split('_');
                CandidateName = can.CandidateName;
                CandidateParty = can.CandidateParty;
                ElectionYear = FileIDSplit[0];
                ElectionType = FileIDSplit[1];
                Race = FileIDSplit[2];
            }
        }

Ошибка возникает при втором "p => p."

Ответы [ 2 ]

0 голосов
/ 31 января 2019

Должно быть:

p => p.CandidateName == candidateResult && p.FileIdentification == fileResult
0 голосов
/ 31 января 2019

Вам нужно только один раз указать лямбда-переменную ввода (p =>), правая часть - просто выражение и может использовать ввод p по желанию

...Where(p => p.CandidateName == candidateResult && p.FileIdentification == fileResult);

Лямбда-выражения (Руководство по программированию в C #)

Чтобы создать лямбда-выражение, вы задаете входные параметры (если есть) в левой части оператора лямбда =>, и вы помещаетеблок выражения или оператора на другой стороне

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...