Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.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# 删除编辑表单中的图像选项_C#_Ajax_Asp.net Core_Razor Pages_Delete File - Fatal编程技术网

C# 删除编辑表单中的图像选项

C# 删除编辑表单中的图像选项,c#,ajax,asp.net-core,razor-pages,delete-file,C#,Ajax,Asp.net Core,Razor Pages,Delete File,我想删除编辑表单中的图像并显示上载文件选项。由于我使用多个表单的选项卡窗格,如何使用Ajax实现这一点 这是我的密码 Biodata.cshtml <div class="form-group"> <label class="control-label-staff"><b>Photo</b></label> @if (Model.Im

我想删除编辑表单中的图像并显示上载文件选项。由于我使用多个表单的选项卡窗格,如何使用Ajax实现这一点

这是我的密码

Biodata.cshtml

<div class="form-group">
                <label class="control-label-staff"><b>Photo</b></label>
                @if (Model.ImageFiles != null)
                {
                    foreach (var item in Model.ImageFiles)
                    {
                        if (item.Name.Substring(0, 2) == "IM")
                        {
                            <span class="control-label-staff">
                                <img src="~/Documents/EmployeeAttachments/@Request.Query["EmpID"].ToString()/@item.Name" width="70px" height="70px" />
                            </span><br/>
                            <a asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">Delete</a>                            
                            
                        }
                    }
                }
                @if (Model.ImageFiles == null)
                {
                    <input type="file" asp-for="StaffPhoto" class="form-control-staff" accept="image/*" style="border:1px solid white;" />
                }
            </div>
这是我在BioData.cshtml.cs中的asp页面处理程序方法

public async Task<IActionResult> OnPostRemoveImageAsync()
        {
            string filename = Request.Form["filename"];
            if (filename != null)
            {
                var Folder = StaffBioData.EmpID.ToString();
                string filedel = Path.Combine(_env.WebRootPath, "Documents/EmployeeAttachments", Folder, filename);
                FileInfo fi = new FileInfo(filedel);
                if (fi != null)
                {
                    System.IO.File.Delete(filedel);
                    fi.Delete();
                } 
            }
            return new OkResult();

        }
PostRemoveImageAsync()上的公共异步任务 { 字符串filename=Request.Form[“filename”]; 如果(文件名!=null) { var Folder=StaffBioData.EmpID.ToString(); 字符串filedel=Path.Combine(_env.WebRootPath,“Documents/EmployeeAttachments”,文件夹,文件名); FileInfo fi=新的FileInfo(filedel); 如果(fi!=null) { System.IO.File.Delete(filedel); fi.删除(); } } 返回新的OkResult(); }
任何帮助都将不胜感激。谢谢。

链接是GET请求。你不能通过链接发帖;这就是表格的用途。你需要一些类似的东西:

@if (Model.ImageFiles != null)
{
    foreach (var item in Model.ImageFiles)
    {
        if (item.Name.Substring(0, 2) == "IM")
        {
            @*<a asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">Delete</a>*@
            <form method="post" asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">
                <input type="submit" value="delete" />
            </form>
        }
    }
}
@if(Model.ImageFiles!=null)
{
foreach(Model.ImageFiles中的var项)
{
if(item.Name.Substring(0,2)=“IM”)
{
@*删除*@
}
}
}

链接是GET请求。你不能通过链接发帖;这就是表格的用途。你需要一些类似的东西:

@if (Model.ImageFiles != null)
{
    foreach (var item in Model.ImageFiles)
    {
        if (item.Name.Substring(0, 2) == "IM")
        {
            @*<a asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">Delete</a>*@
            <form method="post" asp-page-handler="RemoveImage" data-ajax="true" data-ajax-method="post" data-ajax-complete="RemoveImageCompleted">
                <input type="submit" value="delete" />
            </form>
        }
    }
}
@if(Model.ImageFiles!=null)
{
foreach(Model.ImageFiles中的var项)
{
if(item.Name.Substring(0,2)=“IM”)
{
@*删除*@
}
}
}

Hi@Teena,有更新吗?Hi@Teena,有更新吗?Hi Rena,很抱歉我的回复太晚了。我能用锚定标签代替表格吗?Hi Rena,很抱歉我的回复太晚了。我能用锚定标签代替表格吗?