Как получить значение типа int из строки запроса в ASP .NE Core - PullRequest
0 голосов
/ 22 февраля 2020

Я реализую asp. net основной проект, и у меня есть строка кода, подобная следующей:

var myAPIApplicantId = (from x in _context.Apiapplicant
                        where x.ApiRequestNo == apiapplicantviewmodel.apiApplicantvm.ApiRequestNo
                        select new { x.Id }).First();

После запуска проекта я понимаю, myAPIApplicantId содержит { Id = 1148 }. В другой строке кода у меня есть следующий код:

int IntAPIApplicantID = Convert.ToInt32(myAPIApplicantId);

Но он выдает ошибку при приведении типа. Теперь я хочу знать, как я могу получить значение 1148 для преобразования в int?

1 Ответ

1 голос
/ 24 февраля 2020

Вы можете получить id, как показано ниже:

var myAPIApplicantId = (from x in _context.Apiapplicant
                    where x.ApiRequestNo == apiapplicantviewmodel.apiApplicantvm.ApiRequestNo
                    select new { x.Id }).First();   //this generate an Anonymous Type like {Id=1}

int IntAPIApplicantID = myAPIApplicantId.Id;

Другой способ, вы можете изменить, как показано ниже:

var myAPIApplicantId = _context.Apiapplicant
                               .Where(x.ApiRequestNo == apiapplicantviewmodel.apiApplicantvm.ApiRequestNo)
                               .Select(x => x.Id).First(); //this generate a Integer type

int IntAPIApplicantID = myAPIApplicantId; 
...