protected void btn_Ok_Click(object sender, EventArgs e)
{
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox cka = (CheckBox)GridView1.Rows[i].FindControl("chkid");
if (cka.Checked)
{ int id = Convert.ToInt32(GridView1.DataKeys[i].Value.ToString()); string strsql = "delete from orders where id='" + id + "'"; string strsql123 = "select pdfPath from orders where id ='" +id+ "'";
DataRow drw = DBFun.GetDataRow(strsql123);
string filename = drw["pdfPath"].ToString(); string path = Server.MapPath("..//uploadpic//" + filename);
System.IO.File.Delete(path);
if (DBFun.ExecuteUpdate(strsql))
{
ltl_Msg.Text = "删除成功!";
DataView dvlist = DBFun.GetDataView("select * From orders order by id desc");
AspNetPager1.RecordCount = dvlist.Table.Rows.Count;
Session["dvlist"] = dvlist;
bindData();
}
} } }是循环删除后台上传文件和记录的一个代码,但是报下面这个错误,
{
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox cka = (CheckBox)GridView1.Rows[i].FindControl("chkid");
if (cka.Checked)
{ int id = Convert.ToInt32(GridView1.DataKeys[i].Value.ToString()); string strsql = "delete from orders where id='" + id + "'"; string strsql123 = "select pdfPath from orders where id ='" +id+ "'";
DataRow drw = DBFun.GetDataRow(strsql123);
string filename = drw["pdfPath"].ToString(); string path = Server.MapPath("..//uploadpic//" + filename);
System.IO.File.Delete(path);
if (DBFun.ExecuteUpdate(strsql))
{
ltl_Msg.Text = "删除成功!";
DataView dvlist = DBFun.GetDataView("select * From orders order by id desc");
AspNetPager1.RecordCount = dvlist.Table.Rows.Count;
Session["dvlist"] = dvlist;
bindData();
}
} } }是循环删除后台上传文件和记录的一个代码,但是报下面这个错误,
解决方案 »
- vs运行时问题,期待IDE配置高手帮忙
- .NET真的不能做到吗?
- 一个C#关于事件的问题,在什么时机触发事件
- Monitor类的访问可以在何时访问呢?Thread2在委托可以在Monitor.Exit()之前进入嘛?
- 提问一个超级简单而又恨奇怪的问题!(关于登陆中的窗体关闭打开问题)
- 关于串口的问题,这串是是什么意思?怎么模拟它?
- 如何在c/s的C#编程中,在dagagrid中输入数据时,验证数据????
- 如何将javascript中的值传到c#的方法中?
- 遇到一个窗体公共类传值操作的问题。问下。。。
- 请问C#写的程序,能不能直接编译成二进制的.EXE文件?
- 问个使用xpath 定位xml文档节点的问题
- c# winform 一个关于textbox输入的问题
如:这样删除可以File.Delete(@"d:\web\a.txt");这样删除不可以File.Delete(@"http://.../web/a.txt");你这样删除虚拟路径,肯定不行啊
{
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox cka = (CheckBox)GridView1.Rows[i].FindControl("chkid");
if (cka.Checked)
{ int id = Convert.ToInt32(GridView1.DataKeys[i].Value.ToString()); string strsql = "delete from orders where id='" + id + "'"; string strsql123 = "select pdfPath from orders where id ='" +id+ "'";
DataRow drw = DBFun.GetDataRow(strsql123);
string filename = drw["pdfPath"].ToString();
if (Directory.Exists(filename) == false)
{
if (DBFun.ExecuteUpdate(strsql))
{
ltl_Msg.Text = "删除成功!";
DataView dvlist = DBFun.GetDataView("select * From orders order by id desc");
AspNetPager1.RecordCount = dvlist.Table.Rows.Count;
Session["dvlist"] = dvlist;
bindData();
}
}
else
{ string path = Server.MapPath("..//uploadpic//" + filename);
System.IO.File.Delete(path);
if (DBFun.ExecuteUpdate(strsql))
{
ltl_Msg.Text = "删除成功!";
DataView dvlist = DBFun.GetDataView("select * From orders order by id desc");
AspNetPager1.RecordCount = dvlist.Table.Rows.Count;
Session["dvlist"] = dvlist;
bindData();
}
}
} } }
现在加了判断文件,但是能删除,但是我选择多个话,每次都只能删除一条
我是用Server.MapPath("..//uploadpic//" + filename)获取的