我有一张从MySql返回的图片。它的数据类型是Mysql中的图像。我用ashx处理图像。 下面的代码显示了我的ashx文件。
string imageID = context.Request.QueryString["imageID"];
using(SqlConnection objConnection = new SqlConnection(portalConnectionString))
{
objConnection.Open();
SqlCommand fetchTaskImageCMD = new SqlCommand("fetch_task_image", objConnection);
fetchTaskImageCMD.CommandType = CommandType.StoredProcedure;
fetchTaskImageCMD.Parameters.Add("@IMAGE_ID", SqlDbType.VarChar).Value = imageID;
try
{
SqlDataReader dr = fetchTaskImageCMD.ExecuteReader();
dr.Read();
byte[] bufferImg = (Byte[])dr[0];
context.Response.OutputStream.Write(bufferImg, 0, bufferImg.Length);
}
catch
{
System.Diagnostics.Debug.WriteLine("Image Handler Failed : /DesktopModules/ImageHandler.ashx");
}
objConnection.Close();
}
下面的代码显示了我如何从c#中的类后面的asp.net代码调用我的ashx文件。
protected void Page_Load(object sender, System.EventArgs e)
{
FetchedImage.ImageUrl = "/DesktopModules/ImageHandler.ashx?imageType=" + imageType + "&imageID=" + imageID;
}
我的问题是如何旋转此图像并保存回数据库。
任何评论将不胜感激。
答案 0 :(得分:0)
如果要将其旋转并将其保存回数据库,请在服务器上使用GDI +,而不是将其重新传输回客户端。
System.Drawing.Image可以从字节数组中实例化,从中可以使用GDI +方法旋转图像,从旋转的图像中提取字节数组并保存。
如果您需要一个示例,请告诉我,但谷歌搜索System.Drawing.Image会帮助您。