一个简单的文件管理器,显示upload文件夹下的文件,原来是VB的,能用,改写成C#之后不知道哪的问题可执行但文件内容不显示,请各位帮忙看一下问题在哪,谢谢!================
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Data"%>
<script language="C#" runat="server">
void PageLoad()
{
if(!IsPostBack)
{
BindData();
}
}
void MyDG_Delete(Object sender,DataGridCommandEventArgs E)
{
String myfile;
myfile=Server.MapPath(@"upload\"+MyDG.DataKeys[E.Item.ItemIndex]);
File.Delete(myfile);
MyDG.EditItemIndex=-1;
BindData();
}
void BindData()
{
DirectoryInfo mydir=new DirectoryInfo(Server.MapPath("upload"));
MyDG.DataSource=mydir.GetFiles("*.*");
MyDG.DataBind();
}
</script><html>
<body>
<h4 align="center">我的文件管理器</h4>
<a href="upload.aspx">上传文件</a>
<form runat="server">
<ASP:DataGrid id="MyDG" HeaderStyle-BackColor="#BCBCBC" Width="100%" AutoGenerateColumns="false" OnDeleteCommand="MyDG_Delete" DataKeyField="Name" runat="server">
<Columns>
<asp:HyperLinkColumn HeaderText="名称" DataTextField="Name" DataNavigateUrlField="Name" DataNavigateUrlFormatString="upload/{0}" Target="_blank"/>
<asp:BoundColumn HeaderText="大小" DataField="Length"/>
<asp:BoundColumn HeaderText="类型" DataField="Extension" />
<asp:BoundColumn HeaderText="修改时间" DataField="LastWriteTime" />
<asp:ButtonColumn Text="删除" CommandName="Delete"/>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Data"%>
<script language="C#" runat="server">
void PageLoad()
{
if(!IsPostBack)
{
BindData();
}
}
void MyDG_Delete(Object sender,DataGridCommandEventArgs E)
{
String myfile;
myfile=Server.MapPath(@"upload\"+MyDG.DataKeys[E.Item.ItemIndex]);
File.Delete(myfile);
MyDG.EditItemIndex=-1;
BindData();
}
void BindData()
{
DirectoryInfo mydir=new DirectoryInfo(Server.MapPath("upload"));
MyDG.DataSource=mydir.GetFiles("*.*");
MyDG.DataBind();
}
</script><html>
<body>
<h4 align="center">我的文件管理器</h4>
<a href="upload.aspx">上传文件</a>
<form runat="server">
<ASP:DataGrid id="MyDG" HeaderStyle-BackColor="#BCBCBC" Width="100%" AutoGenerateColumns="false" OnDeleteCommand="MyDG_Delete" DataKeyField="Name" runat="server">
<Columns>
<asp:HyperLinkColumn HeaderText="名称" DataTextField="Name" DataNavigateUrlField="Name" DataNavigateUrlFormatString="upload/{0}" Target="_blank"/>
<asp:BoundColumn HeaderText="大小" DataField="Length"/>
<asp:BoundColumn HeaderText="类型" DataField="Extension" />
<asp:BoundColumn HeaderText="修改时间" DataField="LastWriteTime" />
<asp:ButtonColumn Text="删除" CommandName="Delete"/>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
解决方案 »
- 一道关于装箱的问题(C#)
- 怎样使窗体上的控件始终在最底层
- 将页面中处理的多行数据加载到 GridView 上
- DataGridView
- IIS服务器最大连接数问题,到底能达到多少个?1000?2000?为什么我的程序偶尔会出现"连接池已满"错误,我都已经设置IIS连接数为"不限"了
- 如何获取网页变量值
- 关于webbrowser的url的一个问题
- sql service 自动执行备份
- 用sqlDataReader读取的数据,怎样显示在DataGridView里面?
- c#执行D盘下的一个vbs文件 或者指定位置创建一个vbs文件 并执行
- DXperience更换皮肤怎么没有效果?
- 改写asp的ajax无刷新查询?
<%@ Import Namespace="System.IO"%>
<%@ Import Namespace="System.Data"%>
<script language="VB" runat="server">
Sub Page_Load(Sender As Object, E As EventArgs)
If Not Page.IsPostBack Then
Call BindData()
End If
End Sub
'单击删除时执行该事件过程
Sub MyDataGrid_Delete(Sender As Object, E As DataGridCommandEventArgs)
'执行删除操作
Dim myfile As String
myfile=Server.Mappath("upload\" & MyDataGrid.DataKeys(CInt(E.Item.ItemIndex)))
File.Delete(myfile)
'重新绑定
MyDataGrid.EditItemIndex = -1
Call BindData()
End Sub
'绑定数据子程序
Sub BindData()
Dim mydir As New Directoryinfo(Server.Mappath("upload"))
MyDataGrid.DataSource=mydir.GetFiles("*.*")
MyDataGrid.DataBind()
End Sub
</script>
<html>
<body>
<h4 align="center">我的文件管理器</h4>
<a href="upload.aspx">上传文件</a>
<form runat="server">
<ASP:DataGrid id="MyDataGrid" HeaderStyle-BackColor="#BCBCBC" Width="100%" AutoGenerateColumns="false" OnDeleteCommand="MyDataGrid_Delete" DataKeyField="Name" runat="server">
<Columns>
<asp:HyperLinkColumn HeaderText="名称" DataTextField="Name" DataNavigateUrlField="Name" DataNavigateUrlFormatString="upload/{0}" Target="_blank"/>
<asp:BoundColumn HeaderText="大小" DataField="Length"/>
<asp:BoundColumn HeaderText="类型" DataField="Extension" />
<asp:BoundColumn HeaderText="修改时间" DataField="LastWriteTime" />
<asp:ButtonColumn Text="删除" CommandName="Delete"/>
</Columns>
</asp:DataGrid>
</form>
</body>
</html>
{
BindData();
} IsPostBack你在哪定义的?
你C#代码和VB代码在调试时走的逻辑过程是一样的不?