CSDN-CSDN社区-.NET技术-ASP.NET

收藏 文件上传问题![问题点数:30,结帖人:yrpretty]

  • yrpretty
  • (pretty)
  • 等 级:
  • 结帖率:
楼主发表于:2009-01-09 20:18:21
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class 上传文件 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        lblMessage.Visible = false;
    }
    protected void btn_Click(object sender, EventArgs e)
    {
        lblMessage.Visible = true;
        string strPath = "";
        strPath = Server.MapPath("~/file/");

        try
        {
            if (this.upload.HasFile)
            {
                if (this.upload.PostedFile.ContentLength > 4194304)
                {
                    this.lblMessage.Text = "对不起!上传文件的大小不能超过4MB";
                    return;
                }
                string strExtion = System.IO.Path.GetExtension(this.upload.FileName);
                if (strExtion.ToLower() != ".mp3" && strExtion.ToLower() != ".wav")
                {
                    this.lblMessage.Text = "对不起!只能上传.mp3或.wav的音频文件!";
                    this.upload.Focus();
                    return;
                }
                this.upload.PostedFile.SaveAs(strPath + this.upload.FileName);
                this.lblMessage.Text = "恭喜!上传文件成功!";
            }
            else
            {
                this.lblMessage.Text = "请选择上传文件!";
                return;
            }

        }
        catch
        {
            this.lblMessage.Text = "上传文件失败!";
            return;
        }
    }
}

请问这段代码中的 if (this.upload.PostedFile.ContentLength > 4194304)
                {
                    this.lblMessage.Text = "对不起!上传文件的大小不能超过4MB";
                    return;
                }
怎么不执行啊?谢谢!这段代码还有哪些问题啊?非常感谢!
回复次数:10
#1楼 得分:0回复于:2009-01-09 20:27:15
或者我误解了你的意思。。。但是你的文件得大于4MB括号里面的语句才会执行。
#2楼 得分:0回复于:2009-01-09 20:36:40
我上传的文件大小大于4MB,这句话也不执行啊!
#3楼 得分:0回复于:2009-01-10 14:09:09
建议你单步执行 btn_Click 这个函数,然后看看程序是怎么执行的
#4楼 得分:20回复于:2009-01-10 14:11:39
  • wonture用户头像
  • wonture
  • (职业:程序员 民族:月光族)
  • 等 级:
#5楼 得分:0回复于:2009-01-10 14:28:22
你确定程序执行到
if (this.upload.HasFile)
{}
这里面了吗?
#6楼 得分:0回复于:2009-01-10 16:37:37
检查一下,文件上传的控件是不是放在 UpdatePanel 里边了?

微软的Ajax, UpdatePanel 不支持文件上传
#7楼 得分:10回复于:2009-01-10 16:57:55
确定是否程序执行了以上语句

检查了一下,基本无误!
  • isline用户头像
  • isline
  • (缘清)
  • 等 级:
#8楼 得分:0回复于:2009-01-10 17:31:22
断点+F10,看看执行没有
#9楼 得分:0回复于:2009-01-10 19:24:16
Up
  • dzwebs用户头像
  • dzwebs
  • (dzwebs)
  • 等 级:
#10楼 得分:0回复于:2009-01-10 20:30:24
using System.IO; //这个你都没引入,你还上传什么呀!
相关问题
文件上传问题Java / Web 开发- CSDN社区community.csdn.net
PHP文件上传问题Web 开发/ PHP - CSDN社区community.csdn.net
急!!! 文件上传问题.NET技术/ ASP.NET - CSDN社区community.csdn.net
一个文件上传问题,我比较迷茫。 Web 开发/ PHP - CSDN社区community ...
奇怪的PHP文件上传问题! Web 开发/ PHP - CSDN社区community.csdn.net
简单的文件上传问题Web 开发/ PHP - CSDN社区community.csdn.net