asp.net fileupload控件上传图片并预览图片_实用技巧

本文为大家分享了fileupload控件实现上传图片后并进行预览图片的功能,并对web.config进行了配置,先看一下最终效果:

页面代码:

 <form id="form1" runat="server">
 <div>
 <asp:FileUpload ID="FileUpload1" runat="server" />
 <asp:Button ID="Button1" runat="server" Text="上传" Width="54px" OnClick="Button1_Click" />
 <asp:Label ID="Label1" runat="server" Text="" Style="color: Red"></asp:Label>
 <asp:Image runat="server" ID="Image1" Style="z-index: 102; left: 20px; position: absolute;
  top: 49px" Width="73px" />
 </div>
 </form>

后台代码:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

namespace Web.File
{
 public partial class WebForm1 : System.Web.UI.Page
 {
 protected void Page_Load(object sender, EventArgs e)
 {

 }
 #region 文件上传
 /// <summary>
 /// 文件上传
 /// </summary>
 protected void Button1_Click(object sender, EventArgs e)
 {
  if (FileUpload1.FileName == "")
  {
  this.Label1.Text = "上传文件不能为空";
  return;
  }

  bool fileIsValid = false;
  //如果确认了上传文件,则判断文件类型是否符合要求
  if (this.FileUpload1.HasFile)
  {
  //获取上传文件的后缀
  String fileExtension = System.IO.Path.GetExtension(this.FileUpload1.FileName).ToLower();
  String[] restrictExtension = { ".gif", ".jpg", ".bmp", ".png" };
  //判断文件类型是否符合要求
  for (int i = 0; i < restrictExtension.Length; i++)
  {
   if (fileExtension == restrictExtension[i])
   {
   fileIsValid = true;
   }
   //如果文件类型符合要求,调用SaveAs方法实现上传,并显示相关信息
   if (fileIsValid == true)
   {
   //上传文件是否大于10M
   if (FileUpload1.PostedFile.ContentLength > (10 * 1024 * 1024))
   {
    this.Label1.Text = "上传文件过大";
    return;
   }
   try
   {
    this.Image1.ImageUrl = "~/File/" + FileUpload1.FileName;
    this.FileUpload1.SaveAs(Server.MapPath("~/File/") + FileUpload1.FileName);
    this.Label1.Text = "文件上传成功!";
   }
   catch
   {
    this.Label1.Text = "文件上传失败!";
   }
   finally
   {

   }
   }
   else
   {
   this.Label1.Text = "只能够上传后缀为.gif,.jpg,.bmp,.png的文件";
   }
  }
  }
 }
 #endregion
 }
}

Web.config 配置:

<!--因为FileUpload 控件上传最大为4M,如果要上传更大文件,改下maxRequestLength的大小-->
<configuration>
 <system.web>
 <compilation debug="true" targetFramework="4.0" />
 <httpRuntime requestValidationMode="2.0" maxRequestLength="10485760" executionTimeout="3600" appRequestQueueLimit="10000"/>
 </system.web>
</configuration>

为大家附3个精彩的专题:

ASP.NET控件使用手册

ASP.NET数据绑定控件使用汇总

ASP.NET控件使用汇总

亲,你可以在自己的项目中实现fileupload控件上传图片并进行预览图片的功能,这样网站更具有实用性,基本步骤就是这些,可能还有小编遗漏的地方,希望大家谅解。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索asp.net
fileupload控件
,以便于您获取更多的相关知识。

时间: 2024-09-03 06:11:17

asp.net fileupload控件上传图片并预览图片_实用技巧的相关文章

asp.net Menu控件+SQLServer实现动态多级菜单_实用技巧

首先是数据表的设计 其中treeId指的是该菜单项的父ID,如果treeId为0.表示该菜单项为根菜单项,否则表示他为某菜单项的子菜单,比如id为2的项,他的父节点是1.则他是张三的子菜单,而张三是根菜单,position只用于根菜单项,用于控制显示的顺序. 往网页里拖入一个menu控件,然后添加代码 复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Web; using Sy

ASP.NET笔记之 控件与母板的区别分析_实用技巧

1.ASP.NET的好坏处 CodeBehind:"前aspx后cs"的模式,(1.aspx(控件定义.html.css)控制页面长相,cs控制程序逻辑aspx就是模板引擎,不需要再去寻找第三方的模板引擎(2.aspx中调用cs的成员级别必须是protected或者public不能是private因为当前this执行的是当前的子类(通过反编译查看) 2. Literal: Mode属性,避免XSS攻击 TextBox:AutopostBack=true 焦点离开Textbox提交表单A

ASP.NET中Validation验证控件正则表达式特殊符号的说明_实用技巧

RegularExpressionValidator控件表达式说明: 方括号"[ ]"用与定义可接受的字符.[abc123] 表示控件只能接受 a,b,c,1,2,3 这6个字符: 反集合符号 " ^ "用于定义不可以接受的字符.[^a-h] 表示控件除了 a 到 h 8个字符外,都可以接受: 花括号"{ }"定义必须输入的字符个数.{6}表示只能输入6个字符 : {6,}表示必须输入6个以上,无上限 : {2,6} 表示必须输入2至6个字符:但

Asp.net_Table控件の单元格纵向合并示例_实用技巧

业务需要,动态生成表,同一列中数据相同的单元格需要合并. 解决方案,创建Table控件处理类,代码如下: 复制代码 代码如下: /// <summary>表格控件相关操作类 /// </summary> public static class aspTable { /// <summary>合并行 /// </summary> /// <remarks>版权信息:http://www.qqextra.com,http://t.qq.com/ls_

验证用户必选CheckBox控件与自定义验证javascript代码_实用技巧

CheckBox控件,由于它的值是选择与非选择.因此在提交数据时,想让用户必须选择CheckBox,普通情况之下,不好做验证. 但我们可以使用asp:CustomValidator来验证,不过还得写自定义验证Javascript代码,可参考如下: 复制代码 代码如下: function ValidateCheckBox(sender, args) { var checkbox = document.getElementById("<%=CheckBox1.ClientID %>&qu

网页(aspx)与用户控件(ascx)交互逻辑处理实现_实用技巧

几个页面(ASPX)都使用一些相同的控件,一个文本框,二个按钮(搜索和导出),为了以后好维护,把这相同的部分抽取放在一个用户控件(ASCX)上.现需要处理逻辑如下 搜索事件处理的逻辑在各个页面处理. 问题是按钮在用户控件内,Click事件怎样写在各个页面上? 每个页面的搜索结果不同的格式,因此把结果显示于各自的页面上. 用户控件的导出默认是Enabled="false" ,当有搜索结果时,它才会变为true. 它怎样知道各个页面是否已经有了结果? 用户控件的文本框的值,作为搜索条件,也

用.Net的File控件上传文件的解决方案_实用技巧

在遍历了csdn中所有关于上传大文件的帖子以后,写了这篇垃圾.(:-))  上传大文件,有好几种方法:  1.思归的HttpWorkerRequest方法,太难,看不懂:-( 2.利用第三方的控件 AspNetUpload 要钱!!算了,咱还是喜欢免费的. 3.修改web.config文件,但是不能捕获错误. 4.通过ftp的方式上传.服务器需要提供ftp服务.  没辙,只好选第三种方式,谁让咱太蠢了呢!(太蠢了,没有关系,要多吃鱼,听说吃鱼能聪明点.)  那就仔细专研第三种方式吧!  修改We

客户端用JavaScript填充DropDownList控件 服务器端读不到值_实用技巧

填充没有任何问题,但是在服务器端却取不出来下拉表中的内容.页面代码如下. 复制代码 代码如下: <form id="form1" runat="server"> <div> <h3>看看用js填充的dropdownlist控件在服务器端能读出来吗?</h3> 三个级联下拉列表框: <asp:DropDownList runat="server" id="bigTypeList&quo

动态向页面添加控件和使用正则表达式的代码_实用技巧

复制代码 代码如下: namespace WebCode { public partial class _default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { String str = "这是一个测试文件<{config name=\"pagetitle1\"}>,一个标签的解析<{config name=\"pagetitle2\