我最近将照片添加到我的 SQL 数据库中,并使用 Asp:Image 将它们显示在 *.aspx 页面上。此控件的 ImageUrl 存储在单独的 *.aspx 页面中。它适用于个人资料图片。
我手头有一个新问题。我需要每个用户都能够拥有自己的照片库页面。我希望将照片存储在 sql 数据库中。存储照片并不难。问题是显示照片。我希望照片以缩略图网格方式存储,当用户单击照片时,它应该在单独的页面上显示照片。
做这个的最好方式是什么。显然它不是使用 Asp:Image。我很好奇我是否应该使用 Gridview。如果是这样,我该怎么做?它们应该是为此存储在数据库中的缩略图大小吗?
一旦图片点击其他页面看起来如何,以便它显示正确的图像。我认为通过 url 发送 photoId 是不正确的。
下面是我用来显示个人资料图片的页面中的代码。
protected void Page_Load(object sender, EventArgs e) {
string sql = "SELECT [ProfileImage] FROM [UserProfile] WHERE [UserId] = '" + User.Identity.Name.ToString() + "'";
string strCon = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["SocialSiteConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(strCon);
SqlCommand comm = new SqlCommand(sql, conn);
conn.Open();
Response.ContentType = "image/jpeg";
Response.BinaryWrite((byte[])comm.ExecuteScalar());
conn.Close();
}