문제

레거시 데이터베이스에 대한 CRUD 기능을 만들고 엔티티 프레임 워크를 ORM 도구로 사용하려고합니다. 한 테이블 '사이트'에는 사용자가 보지 못하는 안내 유형 'ID'열이 있으며 사용자가 사이트를 정리하는 데 사용하는 정수 유형 'siteId'가 있습니다.

신은 숫자 SiteID 열이 데이터베이스에서 Varchar (10) 유형의 이유를 알고 있지만, 모든 SiteID에는 정수가 있으며 모든 SiteId는 정수가 될 것입니다.

새롭고 독창적 인 정수 유형 SiteId를 생성하기 위해 엔티티 SQL 또는 LINQ를 사용하여 효과적으로 'SELECT MAX (siteId)'를 효과적으로 수행 할 수 있습니까?

다시 말해, Varchar (10)에서 열의 모든 값을 int로 변환하고 해당 세트에서 최대 값을 선택할 수 있습니까 ??

이것은 유망한 것처럼 보였지만 LINQ는 구문 분석을 "매장 절차"로 변환 할 수 없습니다.

int x = entities.Sites.Max(s => int.Parse(s.SiteId));
도움이 되었습니까?

다른 팁

이건 작동 ...

String[] numbers = new String[] { "2", "34", "5", "23", "5", "1" };

var max = numbers.Max(x => Int32.Parse(x));
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top