|
Графич. файл в BLOB
#32729438
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
Ссылка на профиль пользователя:
|
Участник
Откуда: Тверь (Иркутск, Край)
Сообщения: 8 212
|
|
Лучше уж тогда и сами файлы в БД хранить.
Ловите работающий код, который и то и то делает и пихает в БД (MS SQL)
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54.
UploadedFile -- это HtmlInputFile
If Len(UploadedFile.Value) > 0 Then
Dim myImage, myThumbnail As System.Drawing.Image
Dim myImageStream As New MemoryStream()
Dim myThumbStream As New MemoryStream()
Try
myImage = System.Drawing.Image.FromStream(UploadedFile.PostedFile.InputStream)
If Not (myImage.RawFormat.Equals(ImageFormat.Jpeg)) Then
Session("PhotoMessage") = "PhotoErrorImageWrongFormat"
Exit Try
End If
If Not CheckImageIsWrongSize(myImage.Height, myImage.Width) Then
Exit Try
End If
Dim ImageName As String = Path.GetFileName(UploadedFile.PostedFile.FileName)
Dim ImageType As String = ".jpg"
If myImage.RawFormat.Equals(ImageFormat.Tiff) Then ImageType = ".tiff"
ImageName = Replace(ImageName, Path.GetExtension(ImageName), ImageType)
Dim h, w As Integer
If myImage.Height > myImage.Width Then
h = 90
w = myImage.Width / (myImage.Height / 90 )
Else
w = 90
h = myImage.Height / (myImage.Width / 90 )
End If
myThumbnail = myImage.GetThumbnailImage(w, h, Nothing, IntPtr.Zero)
myThumbnail.Save(myThumbStream, ImageFormat.Jpeg)
myImage.Save(myImageStream, myImage.RawFormat)
If MyConnection Is Nothing Then
MyConnection = New SqlConnection("connectionstring")
MyCommand = New SqlDataAdapter("", MyConnection)
End If
MyCommand.SelectCommand.CommandType = CommandType.StoredProcedure
MyCommand.SelectCommand.Parameters.Clear()
MyCommand.SelectCommand.CommandText = "PhotoThumbnailIns"
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@FileName", SqlDbType.VarChar)).Value = ImageName
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@Height", SqlDbType.Int)).Value = myImage.Height
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@Width", SqlDbType.Int)).Value = myImage.Width
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@Size", SqlDbType.Int)).Value = UploadedFile.PostedFile.ContentLength
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@Image", SqlDbType.Image)).Value = myImageStream.GetBuffer
MyCommand.SelectCommand.Parameters.Add(New SqlParameter("@Thumbnail", SqlDbType.Image)).Value = myThumbStream.GetBuffer
MyCommand.Fill(DS, "PhotoInsert")
Finally
If Not myThumbStream Is Nothing Then myThumbStream.Close()
If Not myImageStream Is Nothing Then myImageStream.Close()
If Not myThumbnail Is Nothing Then myThumbnail.Dispose()
If Not myImage Is Nothing Then myImage.Dispose()
UploadedFile.PostedFile.InputStream.Close()
End Try
UploadedFile.Dispose()
End If
-- Tygra's --
|
|
|