Нужна помощь Linq Query - PullRequest
1 голос
/ 30 июня 2010

У меня есть следующий простой запрос Linq:

(from container in Container
join containerType in ContainerType on container.ContainerType equals containerType
where containerType.ContainerTypeID == 2
select container).Max (row => row.SerialNumber)

Как есть, этот запрос работает нормально.Проблема в том, что SerialNumber в БД имеет тип nvarchar.Когда ContainerTypeID = 2, значения в этом столбце всегда будут целыми числами, но не будут заполнены нулями.Поэтому выполнение Max без приведения всех серийных номеров к целым числам не будет работать (например, Max выберет «2» вместо «10»).Итак, мой вопрос, как я могу привести все значения row.SerialNumber к целому числу, чтобы Макс мог найти самый большой серийный номер?

1 Ответ

0 голосов
/ 30 июня 2010

Я попытался привести этот путь, и это сработало.

(from container in Container
join containerType in ContainerType on container.ContainerType equals containerType
where containerType.ContainerTypeID == 2
select container).Max (row => Convert.ToInt32(row.SerialNumber))

Но если значение в row.SerialNumber больше значения int или недопустимое значение вызывает исключение.

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