I am trying to Parse a String into Nullable int, with Linq select. The following last line is not working in Select. Receiving Error below. How can it be fixed?
Resource: https://stackoverflow.com/a/45066/13889515
var aviationInfo = _dbContext.Cpamlt
.Where(c=> c.Account == bppInfoRequestDto.AccountNumber)
.Select(cpamlt => new BppAviationInfoDto()
{
AccountNumberIdentityId = cpamlt.Cpamltid,
SerialNumber = cpamlt.Vinserno,
Manufacturer = cpamlt.Manmod,
MakeModel = cpamlt.Manmak,
YearManufactured = Int32.TryParse(cpamlt.Manyr, out tempVal) ? Int32.Parse(cpamlt.Manyr) : (int?)null,
Error: The name 'tempVal' does not exist in the current context
Trying to avoid Extension Methods if possible
Using Net Core 3.1 with C#8
The syntax requires you to define the variable, if you haven't previously. So use
But, your code can be shortened, as
tempValwill contain the value you want, you don't need to parse again -