protected void Button1_Click(object sender, EventArgs e)
{
Boolean fileOK = false;
String path = Server.MapPath("~/UserImage/"); if (FileUpload1.HasFile)
{
//检查文件格式
string fileContentType = FileUpload1.PostedFile.ContentType;
String fileExtension =
System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
String[] allowedExtensions =
{ ".gif", ".png", ".jpeg", ".jpg" };
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
} }
if (fileOK)
{
try
{
//上传
FileUpload1.PostedFile.SaveAs(path
+ userName+".jpg");
FileStream f1 = new FileStream(path
+ userName + ".jpg", FileMode.Open, FileAccess.ReadWrite);
MakeImg.MakeSmallImg(f1, path
+ "200px" + userName + ".jpg", 200, 200);//这是一个静态函数,用来生成不同大小的缩略图
MakeImg.MakeSmallImg(f1, path
+ "60px" + userName + ".jpg", 60, 60);
Label1.Text = "File uploaded!";
}
catch (Exception ex)
{
Label1.Text = "File could not be uploaded." + ex.Message;
}
}
else
{
Label1.Text = "Cannot accept files of this type.";
} }这个是直接写在页面的代码里的,有没有办法提高重用性?而不是像这样一丢代码放在这个里面?
就是类似的要用到页面中的控件的情况,有没有更好方法完成?请问大家碰到这样的情况一般是怎么完成的?
{
Boolean fileOK = false;
String path = Server.MapPath("~/UserImage/"); if (FileUpload1.HasFile)
{
//检查文件格式
string fileContentType = FileUpload1.PostedFile.ContentType;
String fileExtension =
System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
String[] allowedExtensions =
{ ".gif", ".png", ".jpeg", ".jpg" };
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
} }
if (fileOK)
{
try
{
//上传
FileUpload1.PostedFile.SaveAs(path
+ userName+".jpg");
FileStream f1 = new FileStream(path
+ userName + ".jpg", FileMode.Open, FileAccess.ReadWrite);
MakeImg.MakeSmallImg(f1, path
+ "200px" + userName + ".jpg", 200, 200);//这是一个静态函数,用来生成不同大小的缩略图
MakeImg.MakeSmallImg(f1, path
+ "60px" + userName + ".jpg", 60, 60);
Label1.Text = "File uploaded!";
}
catch (Exception ex)
{
Label1.Text = "File could not be uploaded." + ex.Message;
}
}
else
{
Label1.Text = "Cannot accept files of this type.";
} }这个是直接写在页面的代码里的,有没有办法提高重用性?而不是像这样一丢代码放在这个里面?
就是类似的要用到页面中的控件的情况,有没有更好方法完成?请问大家碰到这样的情况一般是怎么完成的?
解决方案 »
- 将接受消息队列的可执行文件放入任务计划,这个程序应该怎么做?
- String 正则表达式的问题 "[SiteName]" 如何获取SiteName
- 还是ASP转ASP.net的问题!判高人指点!100高分请教
- 开发的软件在ntfs下无法运行(求助)
- 关于数据格式化问题
- ASP.NET/C# 实现只允许IE下载,不允许FlashGet等工具下载的问题~~~~~~
- asp.net 3.5 提供AJAX服务 vs2008
- 为什么在调试通过,在XP和WIN2K下出现不同结果???(在线等)
- 关于多层结构中事务处理的问题.
- 奇怪了,SelectedIndexChanged事件没有发生?帮我看看啊!!
- 请教页面过期问题
- 微软首页菜单实现
你可以在类的方法里面指定参数
比如你这里需要使用FileUpLoad,你可以把它做成一个文件上传类。做一个方法参数用fileUpload类
///
/// </summary>
/// <param name="FileUpload1"></param>
/// <param name="userName"></param>
/// <returns>返回状态,为空的时候正常</returns>
public string UP(FileUpload FileUpload1, string userName, 不知道你的MakeImg是什么类型 MakeImg)
{
Boolean fileOK = false;
String path = HttpContext.Current.Server.MapPath("~/UserImage/"); if (FileUpload1.HasFile)
{
//检查文件格式
string fileContentType = FileUpload1.PostedFile.ContentType;
String fileExtension =
System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
String[] allowedExtensions = { ".gif", ".png", ".jpeg", ".jpg" };
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
} }
if (fileOK)
{
try
{
//上传
FileUpload1.PostedFile.SaveAs(path
+ userName + ".jpg");
FileStream f1 = new FileStream(path
+ userName + ".jpg", FileMode.Open, FileAccess.ReadWrite);
MakeImg.MakeSmallImg(f1, path
+ "200px" + userName + ".jpg", 200, 200);//这是一个静态函数,用来生成不同大小的缩略图
MakeImg.MakeSmallImg(f1, path
+ "60px" + userName + ".jpg", 60, 60); return "";
}
catch (Exception ex)
{
return "File could not be uploaded." + ex.Message;
}
}
else
{
return "Cannot accept files of this type.";
} }
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;public partial class WebUserControl : System.Web.UI.UserControl
{
public string FilePath { get; set; }
public string UserName { get; set; }
protected void Page_Load(object sender, EventArgs e)
{ }
protected void Button1_Click(object sender, EventArgs e)
{
Boolean fileOK = false;
FilePath= Server.MapPath("~/UserImage/");
UserName = HttpContext.Current.User.Identity.Name; if (FileUpload1.HasFile)
{
//检查文件格式
string fileContentType = FileUpload1.PostedFile.ContentType;
String fileExtension =
System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
String[] allowedExtensions = { ".gif", ".png", ".jpeg", ".jpg" };
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
} }
if (fileOK)
{
try
{
//上传
FileUpload1.PostedFile.SaveAs(FilePath+userName + ".jpg");
FileStream f1 = new FileStream(FilePath
+ UserName + ".jpg", FileMode.Open, FileAccess.ReadWrite);
MakeImg.MakeSmallImg(f1, FilePath
+ "200px" + UserName + ".jpg", 200, 200);//这是一个静态函数,用来生成不同大小的缩略图
MakeImg.MakeSmallImg(f1, FilePath
+ "60px" + UserName + ".jpg", 60, 60);
Label1.Text = "File uploaded!";
}
catch (Exception ex)
{
Label1.Text = "File could not be uploaded." + ex.Message;
}
}
else
{
Label1.Text = "Cannot accept files of this type.";
} }
}
WebUserControl.ascx代码如下:[code=HTML]
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="WebUserControl" %>
<div>
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="Button1" runat="server" Text="上传" onclick="Button1_Click" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</div>
[/code]