Загрузка изображения из поля изображения БД SQL Server в UIImageView - PullRequest
0 голосов
/ 08 июня 2011

У нас есть изображения, хранящиеся в нашей базе данных SQL Server в поле типа изображения.Я просто хочу знать, как я могу получить их в UIImageView в моем приложении для iPad.Мое приложение iPad взаимодействует с SQL Server через поставщика услуг OData, поэтому поле изображения выглядит как тип NSData, поэтому я уже попробовал следующий код:

UIImage *currentImage = [[UIImage alloc] initWithData:[currentEntityImage getEntityImageData]];
[myImageView setImage:currentImage];

Где "[currentEntityImage getEntityImageData]" - это поле NSDataконвертируется из поля изображения.Проблема в том, что я никогда не могу получить что-либо для отображения в UIImageView.

Вот соответствующий код, который я использую в нашем приложении .net, который правильно показывает изображение:

Dim EntImage As EntityImage = CType(e.Entities.Item(0), EntityImage)
Dim ms As New System.IO.MemoryStream(EntImage.EntityImage)
Me.imgEntityImage.Image = System.Drawing.Image.FromStream(ms)

Это отлично работаети правильно показывает изображение (я получаю одни и те же данные на обеих платформах).

Есть идеи о том, что мне не хватает в моем коде obj-c?Я все это время рвал на себе волосы.

Заранее спасибо

Ответы [ 2 ]

0 голосов
/ 02 февраля 2012

возможно данные, возвращаемые из OData, кодируются Base64.Попробуйте расшифровать его с помощью http://cocoawithlove.com/2009/06/base64-encoding-options-on-mac-and.html

Надеюсь, это поможет

0 голосов
/ 08 июня 2011

Попробуйте это

NSData *imageData =[NSData dataWithData:[currentEntityImage getEntityImageData]];  
UIImage *animalImage = [[UIImage alloc] initWithData:imageData];  
[myImageView setImage:animalImage];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...