asp.net - 我想编写显示使用 FileUpload 的 ASP.NET 代码
问题描述
我写了一个代码,当用户点击上传按钮时,word文件应该被保存并重定向到第二页,word文件保存在给定的路径中,但它没有打印任何输出(它向我显示空白页)
第一页.aspx
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class pg_upload : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string fname = FileUpload1.FileName;
if (FileUpload1.HasFiles)
{
Label1.Text = "Selected file uploaded";
}
else {
Label1.Text += "Select a file";
return;
}
int flength=FileUpload1.PostedFile.ContentLength;
Int32 a = flength * 1024;
if (flength > a)
{
Label1.Text += "File Out Of Range";
}
if (FileUpload1.PostedFile.ContentType != "application/msword")
{
Label1.Text += "Upload word files only";
}
FileUpload1.SaveAs(Server.MapPath("~")+"/Myfolder/"+
FileUpload1.FileName);
Response.Redirect("pg_viewUploads.aspx");
}
}
我的第二页.aspx
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class pg_viewUploads : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string fpath=Server.MapPath("~")+"/Myfolder";
string [] files=Directory.GetFiles(fpath);
string[] name=new string[files.Length];
FileInfo fi;
int i=0;
foreach (string s in files)
{
fi = new FileInfo(s);
name[i] = "/Myfolder/" + fi.Name;
i++;
}
StringBuilder sb = new StringBuilder();
sb.Append("<table>");
i = 0;
sb.Append("<tr>");
for (int j = 1; j < 3; j++)
{
sb.Append("<tr>");
for (int k = 1; k <3; k++)
{
if (i > files.Length-1)
{ return; }
sb.Append("<a href="+ name[i] + ">" +name[i]+"</a>");
i++;
}
sb.Append("</tr>");
}
sb.Append("</tr>");
sb.Append("</table>");
Label b = new Label();
b.Text = sb.ToString();
b.Visible = true;
PlaceHolder1.Controls.Add(b);
}
}
这张图片将为您详细介绍如何运行代码 请提供解决方案。任何帮助将不胜感激,在此先感谢
解决方案
我看到的第一个问题是您将标签嵌入<tr>
标签中<tr>
。这在 HTML 中是不允许的。
我看到的第二个问题是你正在循环j
并且k
没有明显的原因。遍历files
数组就足够了。
推荐阅读
- docker - 如何在 Windows 上访问 minikube docker daemon?
- r - 基于数据框R将数据添加到列表
- amazon-web-services - lambda函数抱怨文件名
- swift - UITableViewCell 宽度不会在旋转到横向时扩展
- reactjs - React Redux 从后端方法获取数据
- crystal-reports - 页眉中的共享变量重置公式不会导致页脚中的公式重置
- java - 从 Java 中的 IP 摄像机获取最新图像
- javascript - 如何在几分钟/秒/次后清除 JavaScript 变量值
- callback - 如何在 Rust 中通过 FFI 实现对 self 的回调?
- angular - 为什么单选按钮没有在角度的真实条件下标记检查?