<input id="upFile" type="file" name="upFile" runat="server" />
或者
<asp:FileUpload ID="FileUpload1" runat="server" />
.aspx.cs
//上传照片
if (this.upFile.PostedFile.FileName.Length > 0)//此处只是简单判断,不太严谨
{
string path = upFile.PostedFile.FileName;
int strNum = path.LastIndexOf(".");
string lastName = path.Substring(strNum);
string NewImageName = DateTime.Now.ToString("yyyyMMddHHmmss") + lastName;
string NewImageUrl = "StudentAlbum/" + NewImageName;//可设置要放在服务器上的相对路径
upFile.PostedFile.SaveAs(Server.MapPath(NewImageUrl));
this.Image1.ImageUrl = NewImageUrl;
this.HyperLink1.NavigateUrl = NewImageUrl;
}
原理是先把文件上传到服务器指定目录,而后把这个路径存入数据库。需要展示上传的文件(最直接的就是图片),只要从数据库中取出这个路径,在相关控件上显示即可。
如编辑时:
.aspx页面
<asp:HyperLink ID="HyperLink1" runat="server" Target="_blank">
<asp:Image ID="Image1" runat="server" Width="170px" Height="200px"></asp:Image>
.aspx.cs
if (!IsPostBack)
{
this.Image1.ImageUrl = ds.Tables[0].Rows[0]["photo"].ToString();
this.HyperLink1.NavigateUrl = ds.Tables[0].Rows[0]["photo"].ToString();
}