109,897
社区成员




response.ContentType = "image/jpeg";
var stream = new MemoryStream();
foreach (var img in images)
{
var imgbyte = File.ReadAllBytes(Sph.Common.Variables.ImgUploadRootPath + img.TrimStart('/'));
stream.Write(imgbyte, 0, imgbyte.Length);
}
stream.Close();
response.BinaryWrite(stream.GetBuffer());
response.Flush();
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField DataField="PersonName" />
<asp:ImageField DataImageUrlField="PersonId" DataImageUrlFormatString="ShowImage.aspx?id={0}"/>
</Columns>
</asp:GridView>
<%@ Page Language="C#" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
int id = 0;
if (Int32.TryParse(Request.QueryString["id"], out id))
{
string strCnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Image2Access.mdb";
System.Data.OleDb.OleDbConnection myConnection = new System.Data.OleDb.OleDbConnection(strCnString);
String strSql = "select PersonImageType,PersonImage from Person Where PersonId=@id";
System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand(strSql, myConnection);
command.Parameters.AddWithValue("@id", id);
//打开连接,执行查询
myConnection.Open();
System.Data.OleDb.OleDbDataReader dr = command.ExecuteReader();
if (dr.Read())
{
byte[] image = (byte[])dr["PersonImage"];
Response.ClearContent();
Response.ContentType = dr["PersonImageType"].ToString();
Response.BinaryWrite(image);
Response.End();
}
else
{
OutPutNonePicture();
}
dr.Close();
myConnection.Close();
myConnection.Dispose();
}
else
{
OutPutNonePicture();
}
}
/// <summary>
/// 对于不存在的图片,输出none.gif
/// </summary>
private void OutPutNonePicture()
{
Response.ClearContent();
Response.ContentType = "image/gif";
Response.WriteFile(Server.MapPath("~/none.gif"));
Response.End();
}
</script>
private void ReduceImageSize(string filePath)
{
using (MemoryStream OrgImageMemory = new MemoryStream(File.ReadAllBytes(filePath)))
{
using (Image orgImage = Image.FromStream(OrgImageMemory))
{
using (Bitmap result = new Bitmap(orgImage.Width / 2, orgImage.Height / 2))
{
result.SetResolution(orgImage.HorizontalResolution / 2, orgImage.VerticalResolution / 2);
using (Graphics graphics = Graphics.FromImage(result))
{
graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
graphics.DrawImage(orgImage, 0, 0, result.Width, result.Height);
}
result.Save(filePath);
}
}
}
}