1 FileUpLoad 文件上传控件

主要实现方法是 FileUpLoad.SaveAs();
代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
namespace WebApplication1
{
public partial class FileUpLoad文件上传 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
Boolean fileOK = false;
Boolean filelengthOK = true;
string path = Server.MapPath("~/img/"); //设置服务器上传位置
if (FileUpload1.HasFile) //是否有上传文件
{
string fileExtension = Path.GetExtension(FileUpload1.FileName).ToLower(); //获取上传文件的文件类型
string[] allowedext = { ".gif", ".png", ".jpeg", ".jpg" };
Random rd = new Random();
string filename = DateTime.Now.ToString("yyyyMMddHHmmssfff") + rd.Next(100, 999) + fileExtension;
for (int i = 0; i < allowedext.Length; i++)
{
if (fileExtension == allowedext[i])
{
fileOK = true;
break;
}
}
Label1.Text = "";
if (FileUpload1.PostedFile.ContentLength > 1024 * 300)
{
Label1.Text = "上传内容过大,上传失败";
}
else
{
if (fileOK)
{
try
{
FileUpload1.SaveAs(path + filename);
Label1.Text = "文件上传成功";
}
catch (Exception ex)
{
Label1.Text = "文件不能上传";
}
}
else
{
Label1.Text = "不能接受这种类型的文件进行上传";
}
}
}
}
}
}
关键实现的代码就两句
string path = Server.MapPath("~/img/"); //设置服务器上传位置
FileUpload1.SaveAs(path + filename); //传入的参数 是路径加上文件名
其他语句
获取文件的类型(得到文件后缀名)
string fileExtension = Path.GetExtension(FileUpload1.FileName).ToLower();
获取上传文件的长度
FileUpload1.PostedFile.ContentLength
文件大小单位是字节来计的...
常用属性:
2 Repeater控件
Repeater 控件使用列表方式来显示数据,能够让用户定义 Template 模板标记,自动用模板标记的项目,像循环那样重复编排数据源的数据,其基本语法如下所示。
<asp:Repeater Id="repeater" Runat="server">
<HeaderTemplate> </HeaderTemplate>
<ItemTemplate> </ItemTemplate>
<AlternatingItemTemplate> </AlternatingItemTemplate>
<FooterTemplate> </FooterTemplate>
</asp:Repeater>
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="repeator.aspx.cs" Inherits="WebApplication1.repeator" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table width="436" border="1" align="center">
<tr>
<td width="80">学号</td>
<td width="80">姓名</td>
<td width="80">年龄</td>
<td width="80">性别</td>
<td width="80">班级</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr><td> <%#Eval("stu_id") %></td>
<td> <%#Eval("stu_name") %></td>
<td><%#Eval("stu_age") %></td>
<td> <%#Eval("stu_sex") %></td>
<td> <%#Eval("stu_class") %></td></tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</div>
</form>
</body>
</html>
几句后台实现的代码:
private void GetData()
{
string sql = "select * from stu ";
DataTable dt = SqlHelper.SqlHelperService.ExecuteQueryToTable(sql);
Repeater1.DataSource = dt;
Repeater1.DataBind();
}
3 验证控件
本来注册表单中用户名,密码是否为空,注册邮箱是否合法等验证是通过写的JS代码来进行的,现在可以通过ASP.NET的这些控件来实现这些验证操作。
实现的效果如下: