>Hi everybody,
>
>Do you see why this very simple code gives me trouble?
>
>
>var lastLocSuffix = _salespointAdapter.GetAll().Select(sp => new { LocSuffix = sp.LocSuffix }).OrderByDescending(sp => sp.LocSuffix).FirstOrDefault();
> Int16 newSuffix = 1;
> if (lastLocSuffix != null)
> newSuffix = Convert.ToInt16(lastLocSuffix) + newSuffix; // Doesn't like this line
>
> salespoint.LocSuffix = newSuffix;
>
>
>I am trying to increment a number by 1. The number is supposed to be short. Why does it say something about cast if I declared the number to be short?
>
>What am I missing in this code?
>
>Thanks in advance.
What is the value of lastLocSuffix? Can it be converted to a short?
Also you can probably replace your Select, OrderByDescending, and FirstOrDefault with just Max.