こんにちは、私はmvc3に取り組んでいます
ここで、以前にアップロードしたファイルをセッション データから削除する必要があります
データベースに挿入する前にファイルを表示しているので、セッションのデータを表示しています。以前に選択したファイルを削除する必要があります。選択したファイルのインデックス値を取得してセッションからファイルを削除する方法を教えてください。
たとえば、ここでこの投稿を確認してください。これはc#にありますが、これはmvc3にある必要があります。この作業を手伝ってください。誰か助けてください。
ここに私のモデルがあります
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
namespace BugTracker.Models
{
public class BugModel
{
public BugModel()
{
if (ListFile == null)
ListFile = new List<BugAttachment>();
}
public List<BugAttachment> ListFile { get; set; }
public string ErrorMessage { get; set; }
}
public class BugAttachment
{
public string FileName { get; set; }
public int BugAttachmentID { get; set; }
public string AttachmentName { get; set; }
public int BugID { get; set; }
public string AttachmentUrl { get; set; }
public string AttachedBy { get; set; }
}
}
ここに私のコントローラー
public ActionResult UploadFile(string AttachmentName, BugModel model)
BugModel bug = null;
if (Session["CaptureData"] == null)
{
bug = model;
}
else
{
bug = (BugModel)Session["CaptureData"];
}
foreach (string inputTagName in Request.Files)
{
HttpPostedFileBase file1 = Request.Files[inputTagName];
if (file1.ContentLength > 0)
{
BugAttachment attachment = new BugAttachment();
var allowedExtensions = new[] { ".doc", ".xlsx", ".txt", ".jpeg", ".docx" };
var extension = Path.GetExtension(file1.FileName);
if (!allowedExtensions.Contains(extension))
{
model.ErrorMessage = "{ .doc, .xlsx, .txt, .jpeg }, files are allowed.... ";
}
else
{
string filename = Guid.NewGuid() + Path.GetFileName(file1.FileName);
string path = "/Content/UploadedFiles/" + filename;
string savedFileName = Path.Combine(Server.MapPath("~" + path));
file1.SaveAs(savedFileName);
attachment.FileName = "~" + path.ToString();
attachment.AttachmentName = AttachmentName;
attachment.AttachmentUrl = attachment.FileName;
bug.ListFile.Add(attachment);
model = bug;
}
Session["CaptureData"] = model;
}
}
ModelState.Clear();
return View("LoadBug", bug);
}
そしてここに私のビューページ
<div class="UploadMain">
<%:Html.Label("Attachment Name:") %>
<%:Html.TextBoxFor(model=>model.AttachmentName) %>
<span>
<%:Html.Label("Upload Files") %></span>
<input type="file" name="file" id="file" />
<input type="submit" value="Upload" id="Upload" class="style-name cancel" />
<%--onclick="window.location.href='<%= Url.Action("UploadFile", "Bug") %>';"--%>
<table align="center" class="gridtable" border="0" cellspacing="0" cellpadding="0">
<tr>
<th>
Attachment Name
</th>
<th>
Attachment Url
</th>
<th>
Action
</th>
</tr>
<% if (Model != null && Model.ListFile != null)
{ %>
<% foreach (var Emp in Model.ListFile)
{ %>
<tr class="Data">
<td >
<%:Emp.AttachmentName %>
</td>
<td >
<%: Emp.FileName %>
</td>
<td>
<%-- <%= Html.ActionLink("Delete", "Delete")%>--%>
<%:Html.ActionLink("Delete", "Delete", new { @FileName = Emp.FileName })%>
</td>
</tr>
<% } %>
<% } %>
</table>
</div>
たとえば、ここでこの投稿を確認してください。これはc#にありますが、これはmvc3にある必要があります。この作業を手伝ってください。誰か助けてください。
前もって感謝します