Edit Image to byte array and vice versa
Private Function ImageToByteArray(ByVal filename As String, ByVal format As System.Drawing.Imaging.ImageFormat) As Byte()
Dim iImg As System.Drawing.Image = Nothing
Dim iStream As New System.IO.MemoryStream
Dim iBytes() As Byte
Using iImg
iImg = Image.FromFile(filename)
iImg.Save(iStream, format)
End Using
Using iStream
iStream.Seek(0, IO.SeekOrigin.Begin)
iBytes = ProJee.Convert.ToByteArray(iStream)
End Using
Return iBytes
End Function
Private Function ImageToByteArray(ByVal img As System.Drawing.Image, ByVal format As System.Drawing.Imaging.ImageFormat) As Byte()
Dim iImg As System.Drawing.Image = Nothing
Dim iStream As New System.IO.MemoryStream
Dim iBytes() As Byte
img.Save(iStream, format)
Using iStream
iStream.Seek(0, IO.SeekOrigin.Begin)
iBytes = ProJee.Convert.ToByteArray(iStream)
End Using
Return iBytes
End Function
<summary>
Converts a byte array into an image object. The byte array must contain a valid image data.
</summary>
Public Function ByteArrayToImage(ByVal bytes As Byte()) As Image
Dim iImg As System.Drawing.Image = Nothing
Dim iStream As New System.IO.MemoryStream
Try
Using iImg
iStream.Write(bytes, 0, bytes.Length)
iImg = Image.FromStream(iStream)
Return iImg
End Using
Finally
iStream.Close()
iStream.Dispose()
End Try
End Function
Edit Full URI from virtual path
string relativePath = "~/somefolder/test/123.aspx"
Uri newUri = new Uri(Request.Url, VirtualPathUtility.ToAbsolute(relativePath));