2012-02-03 7 views
-1

어떻게이 VBNet 코드를 C#으로 변환 할 수 있습니까? . (ByteToImageC# 바이트 배열로 변환

Dim Bytes() As Byte = CType(SQLreader("ImageList"), Byte()) 
picStudent.Image = jwImage.ByteToImage(Bytes) 

비트 맵으로 바이트 배열을 변환하는 사용자 정의 함수 사용하는 것입니다 내가

byte[] Bytes = Convert.ToByte(SQLreader("ImageList")); // Error Here 
picStudent.Image = jwImage.ByteToImage(Bytes); 

을 시도했지만 말하는 오류가 발생합니다 Cannot implicitly convert type 'byte' to 'byte[]'

내가 뭐하는 거지입니다 기본적으로 이미지를 데이터베이스에서 바이트 배열로 변환하여 그림 상자에 표시합니다.

+3

을해야합니까? – Oded

+0

SQLReader가 DataReader라고 가정하고 있습니까? "ImageList"열은 어떤 유형입니까? –

+0

'Convert.ToByte()'는 하나의'byte'를 반환합니다. 'SQLreader ("ImageList") 형이'byte []'형에 해당하는 메소드를 필요로합니다. – jrummell

답변

3

입니다. 이 작업을 수행하려면 SQLreader의 결과를 byte[] 번으로 캐스팅해야합니다.

가 C#에서 CType에 대한 완벽한 유사한 구조가 없지만 여기에 간단한 캐스트가`SQLReader`입니다 어떤 종류의 트릭

byte[] Bytes = (byte[])SQLreader("ImageList"); 
11
byte[] Bytes = (byte[]) SQLreader("ImageList"); 
picStudent.Image = jwImage.ByteToImage(Bytes); 
5

2

에서는 CType은 유형 캐스트에 해당합니다 도움이

byte[] Bytes = (byte[])SQLreader("ImageList"); 

희망을 시도하지 실제 conversion.Besides, Convert.ToByte는 단일 바이트로 입력을하지 변환을 시도 배열. 동등한 코드는 문제는 당신이 바이트 (VB.Net에서 C#에서 byte[]Byte())의 배열을 가지고 있지만, Convert.ToByte 호출이 단순한 byte을 반환

byte[] bytes=(byte[])SQLreader("ImageList"); 
관련 문제