asp.net使用ext fileupload控件上传文件

苦不苦 2017-01-12 10:52:13
 [AjaxMethod]
public void Add()
{

string Vid; string Vcatalogue; string Filename; string Vname=""; string Vtype = ""; int Vsize; string Vuptime; string Vurl; string Vupremark = "qwety"; int Vnumber;
Vid = System.Guid.NewGuid().ToString();
Vcatalogue = this.txtvcatalogue.Text.Trim();
Vnumber = int.Parse(this.txtvnumber.Text.Trim());
string pic = "";

#region 视频上传
try
{
HttpPostedFile postedFile = HttpContext.Current.Request.Files[0];//获得用户提交的文件
Filename = postedFile.FileName;

string suffixstr = Filename.Substring(Filename.LastIndexOf('.') + 1);//获取文件后缀
if (suffixstr == "avi" || suffixstr == "mp4" || suffixstr == "rmvb")//判断文件类型是不是avi、mp4、rmvb
{
Vsize=FileUploadField1.PostedFile.ContentLength;
if (Vsize < 104857600)
{
#region 根据文件名分别获取获取文件名和后缀
switch (suffixstr) {
case "avi": Vname = Filename.Substring(0, Filename.Length - 4);
Vtype = "avi";
break;
case "mp4": Vname = Filename.Substring(0, Filename.Length - 4);
Vtype = "mp4";
break;
case "rmvb": Vname = Filename.Substring(0, Filename.Length - 5);
Vtype = "rmvb";
break;
}
#endregion
string savePath;
string dir = HttpContext.Current.Request.PhysicalApplicationPath;//当前应用程序的根目录
savePath = "~\\Admin\\upload\\video\\" + Vcatalogue + "\\";//保存文件的目录
string _savepath = Server.MapPath(savePath);
if (System.IO.Directory.Exists(_savepath) == false)//如果不存在就创建file文件夹
{
System.IO.Directory.CreateDirectory(_savepath);
}
//string date = DateTime.Now.ToString("yyyy-M-d") + "-" + DateTime.Now.Hour.ToString() + "-" + DateTime.Now.Minute.ToString() + "-" + DateTime.Now.Second.ToString() + "-";//根据自己需要添加
pic = "Admin\\upload\\video\\"+Vcatalogue+"\\" + Filename;
if (File.Exists(savePath))
{
File.Delete(savePath);//如果文件已经存在就将已存在的文件删除
}
FileUploadField1.PostedFile.SaveAs(_savepath+ System.IO.Path.GetFileName(Filename));
Vurl = pic;
Vuptime = DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss");
int i=VI.Add(Vid, Vcatalogue, Vname, Vtype, Vsize, Vuptime, Vurl, Vupremark, Vnumber);
if (i > 0)
{
Ext.Msg.Show(new MessageBox.Config
{
Buttons = MessageBox.Button.OK,
Icon = MessageBox.Icon.INFO,
Title = "Fail",
Message = "上传成功!"
});
}
else {
Ext.Msg.Show(new MessageBox.Config
{
Buttons = MessageBox.Button.OK,
Icon = MessageBox.Icon.ERROR,
Title = "Fail",
Message = "保存失败!"
});
}
}
else {
Ext.Msg.Show(new MessageBox.Config
{
Buttons = MessageBox.Button.OK,
Icon = MessageBox.Icon.ERROR,
Title = "Fail",
Message = "请选择100M以内的视频文件!"
});
}
}
else
{
Ext.Msg.Show(new MessageBox.Config
{
Buttons = MessageBox.Button.OK,
Icon = MessageBox.Icon.ERROR,
Title = "Fail",
Message = "请选择mp4、avi或rmvb文件!"
});
}

//Vid, Vcatalogue, Vname, Vtype, Vsize, Vuptime, Vurl, Vupremark ,Vnumber
}

这是我上传事件的代码,网站发布到服务器,文件大小限制100m,测试了一个6m的视频可以上传,但是测试另一个30的就不行了,左下角浏览器显示进度条到100%之后根本不进后台方法,我web.config配置了,服务器iis最大文件大小也配置了,还是不行,有没有大神知道怎么回事啊?
或者说给一个能好的解决方案?我baidu了一晚上了,实在没招了
...全文
121 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
苦不苦 2017-01-13
  • 打赏
  • 举报
回复
引用 1 楼 caozhy 的回复:
用ie f12功能看下网络,有没有传输正确的数据过去
上传一个6M的status是200,但是30M的就是404,什么鬼,社么原因引起的?
threenewbee 2017-01-12
  • 打赏
  • 举报
回复
用ie f12功能看下网络,有没有传输正确的数据过去

111,098

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧