현재 Visual Studio 2008 (VB.Net) 및 SQL Server 2008을 사용하고 있습니다. 데이터베이스에 image
으로 저장된 이미지가 있습니다. 내 코드에 가져올 때 System.Byte[]
이고 내 DevExpress (v10.2) .XtraEditors.ImageEdit에 저장하려면 System.Drawing.Image
으로 캐스팅 할 수 없습니다. 내가하려고 할 때 "매개 변수가 유효하지 않습니다"GET으로SQL 데이터베이스에서 이미지를 System.Drawing.Image로 변환하는 방법?
나는 아직
Dim imgStream As MemoryStream = New MemoryStream(image, 0, image.Length)
또는
Dim imgStream As MemoryStream = New MemoryStream(image)
에 시도도 그때 image.FromStream(imgStream)
또는 bitmap.FromStream(imgStream)
를 호출 할 수 없습니다입니다.
편집 : 우리는 내가 프로그램에서 이미지를 볼 수 있습니다 이전 프로그램을 실행하면 SQL 2000에 있던 이전의 시스템에서 업데이트
. 새 이미지를 실행할 때 내가 마이그레이션 한 이미지가 '유효하지 않은 매개 변수'이지만 아직 데이터베이스에 추가 한 이미지 (프로그램의 입력을 통해 볼 수 있음)를 볼 수 있습니다. 이전 데이터베이스와 새 데이터베이스에서 이미지를 가져올 때 정확히 동일합니다. 데이터를 마이그레이션 할 때 고려해야 할 SQL 2000과 SQL 2008의 차이점이 있습니까?
데이터베이스는 이미지를위한 장소가 아닙니다. 더 나은 방법은 이미지 경로를 데이터베이스에 저장하는 것입니다. 열 유형'image'는 이미지와 아무 관련이 없습니다. 단지 이진 데이터를 저장할 수 있습니다. – Dani
Dani는 100 % 정확합니다. –
불행히도이 작업은 시작하기 전에 시작되었습니다. 프로그램이 여러 컴퓨터에 배포되므로 모든 사람이 자신의 컴퓨터에 이미지가 없으므로 동일한 경로가 필요하지 않으므로 이미지가되어야합니다. – Kyra