Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过使用下面的代码,如何从asp.net中的文件夹中删除图像_C#_Asp.net - Fatal编程技术网

C# 通过使用下面的代码,如何从asp.net中的文件夹中删除图像

C# 通过使用下面的代码,如何从asp.net中的文件夹中删除图像,c#,asp.net,C#,Asp.net,cs页面代码 protected void Page_Load(object sender, EventArgs e) { BindData(); } public void BindData() { gvDisplayImages.DataSource = bcObj.DisplayImages(); gvDisplayImages.DataBind(); } protected void gvDisplayImages_RowDeleting(object sende

cs页面代码

protected void Page_Load(object sender, EventArgs e)
{
    BindData();
}
public void BindData()
{
    gvDisplayImages.DataSource = bcObj.DisplayImages();
    gvDisplayImages.DataBind();
}
protected void gvDisplayImages_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
    int intId = Convert.ToInt32(gvDisplayImages.DataKeys[e.RowIndex].Value.ToString());
    bcObj.DeleteImage(intId);
    BindData();
    string filename = Convert.ToString(gvDisplayImages.Rows[e.RowIndex].FindControl("Img1") as Image);
    string filepath = "\\Image\\" + filename;
    FileInfo file = new FileInfo(filepath);
    if (file.Exists)
    {
        file.Delete();
    }
}

在这里,我使用asp.net中的三层体系结构,通过使用上面的代码,同时单击gridview中的删除按钮,成功地从数据库中删除了图像。现在请告诉我如何从存储所有图像的文件夹中删除图像。

需要在代码中使用
ImageUrl

像这样

string filename = ((Image)(gvDisplayImages.Rows[e.RowIndex].FindControl("Img1"))).ImageUrl;

您已经编写了从文件夹中删除文件的代码。我知道代码在那里,但是当我调试代码时,我无法获取图像的文件名。需要在代码中使用
ImageUrl
。如下
string filename=((Image)(gvdisplaymages.Rows[e.RowIndex].FindControl(“Img1”)。ImageUrl由于您尝试了三层体系结构:您可能希望将文件的删除从表示层移到bcObj中…不,这不起作用。如果当时只存在一个图像,它会给出错误,如果存在更多图像,它会获取另一个图像的id如果存在更多图像,您真正的意思是什么?你得到的错误是什么?索引超出了范围。必须为非负数且小于集合的大小。参数名称:indexmore images表示多个成像器u在每行或单个图像中存储多个图像?