2013-10-24 7 views
0

Я использую 3 управления загрузкой файлов в своей веб-форме, Здесь я даю скриншот об этом. enter image description hereКак удалить несколько загруженных файлов?

Вот мой код aspx.cs файла,

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using BusinessLayer; 
using System.IO; 
using System.Data; 
using System.Data.SqlClient; 
using System.Drawing; 

namespace EventManagerApp.SuperAdmin 
{ 
    public partial class Settings : System.Web.UI.Page 
    { 
     public string FilePath; 
     protected void Page_Load(object sender, EventArgs e) 
     { 


     } 

     protected void btnSubmit_Click(object sender, EventArgs e) 
     { 

      General_SettingsBL gb = new General_SettingsBL(); 


      gb.Privacy_Policies = System.IO.Path.GetExtension(fuprivacypolicies.FileName); 



      gb.Privacy_Policies = System.IO.Path.GetExtension(fuprivacypolicies.FileName); 
      gb.Refund_Policies = System.IO.Path.GetExtension(furefundpolicies.FileName); 
      gb.Terms = System.IO.Path.GetExtension(futerms.FileName); 
      gb.Trial_Period = decimal.Parse(txttrailperoid.Text); 

      gb.Insert(); 
      lblmsg.Visible = true; 
      lblmsg.Text = "Records Inserted Successfully"; 

     } 

     protected void btnCancel_Click(object sender, EventArgs e) 
     { 

     } 

     protected void deleterefundpolicies(object sender, EventArgs e) 
     { 

      furefundpolicies.ID = null; 


     protected void deleteprivacypolicies(object sender, EventArgs e) 
     { 
      fuprivacypolicies.ID = null; 
      // fuprivacypolicies = new FileUpload(); 
     } 

     protected void deleteterms(object sender, EventArgs e) 
     { 
      futerms.ID = null; 
      // futerms = new FileUpload(); 
     } 



    } 
} 

и я использую этот код в файле .aspx,

 <%@ Page Title="" Language="C#" MasterPageFile="~/SuperAdmin/EventManager_SuperAdmin.Master" AutoEventWireup="false" CodeBehind="Settings.aspx.cs" Inherits="EventManagerApp.SuperAdmin.Settings" %> 
<%@ Register TagPrefix="asp" Namespace="AjaxControlToolkit" Assembly="AjaxControlToolkit" %> 

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> 

</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> 
    <div class="container"> 
     <div class="row"> 
      <h3> 
       Settings</h3> 
      <hr> 
     </div> 
     <div class="row"> 
      <div class="col-md-6"> 
       <form class="form-horizontal" role="form"> 
       <div class="form-group"> 
        <label for="inputEmail1" class="col-md-4 control-label"> 
         Refund Policies: </label> 
        <div class="col-md-6"> 
         <asp:FileUpload ID="furefundpolicies" runat="server" /> 

        </div> 
        <div class="col-md-6"> 
        <asp:Button ID="btnrefunfpolicy" runat="server" Text="DELETE" class="btn btn-default" OnClick="deleterefundpolicies" /> 
        </div> 
       </div> 

       <div class="form-group"> 
        <label for="inputEmail1" class="col-md-4 control-label"> 
         Privacy Policies</label> 
        <div class="col-md-6"> 
         <asp:FileUpload ID="fuprivacypolicies" runat="server" /> 
        </div> 
         <div class="col-md-6"> 
        <asp:Button ID="btnprivacypolicy" runat="server" Text="DELETE" class="btn btn-default" OnClick="deleteprivacypolicies" /> 
        </div> 
       </div> 
       <div class="form-group"> 
        <label for="inputEmail1" class="col-md-4 control-label"> 
         Terms</label> 
        <div class="col-md-6"> 
        <asp:FileUpload ID="futerms" runat="server" /> 
        </div> 
         <div class="col-md-6"> 
        <asp:Button ID="btnterms" runat="server" Text="DELETE" class="btn btn-default" OnClick="deleteterms" /> 
        </div> 
       </div> 

       <div class="form-group"> 
        <label for="inputEmail1" class="col-md-4 control-label"> 
         Trial Period</label> 
        <div class="col-md-6"> 

         <asp:TextBox ID="txttrailperoid" runat="server" class="form-control"></asp:TextBox> 
         <%-- <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txttrailperoid" 
          Display="Dynamic" ErrorMessage="Please Enter Value"></asp:RequiredFieldValidator>--%> 
        </div> 
       </div> 
       <div class="col-md-10"> 
        <asp:Label ID="lblmsg" runat="server" Visible="false" class="alert alert-success form-group"></asp:Label> 
       </div> 
       <div class="form-group"> 
        <label for="inputEmail1" class="col-md-4 control-label"> 
         &nbsp;</label> 
        <div class="col-md-6"> 
         <asp:Button ID="btnSubmit" runat="server" Text="SAVE" class="btn btn-default" OnClick="btnSubmit_Click" /> 
         <asp:Button ID="btnCancel" runat="server" Text="CANCEL" CausesValidation="false" 
          class="btn btn-default" OnClick="btnCancel_Click" /> 
        </div> 
       </div> 
       </form> 
      </div> 
     </div> 
    </div> 
</asp:Content> 

в моем скриншоте я описать мою проблему, я хотите удалить только один загруженный файл.

+0

Вы пытались удалить его с помощью javascript? – Izikon

+0

Я вижу, где у вас проблема, но до этого я бы попросил вас вставить весь файл .aspx, чтобы я получил подтверждение ... – Bellash

+0

@ AdaBell'hMonTrésor вы можете видеть сейчас, мой код .aspx стр. –

ответ

1

Посмотрите, ваш код не сохраняет все три файла! Вы сохраняете только один из них и удаляете его (или нет)! Как я и обещал, я хотел бы показать вам другой подход, если это может вам помочь.

Здесь вы идете: - я добавил три метки на ASPX - Удалить комментарий в коде позади файла для того, чтобы выполнить свои действия гигабайтных ...

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"><div class="container"> 
     <div class="row"> 
     <h3> 
       Settings</h3> 
     <hr> 
    </div> 
    <div class="row"> 
     <div class="col-md-6"> 
      <form class="form-horizontal" role="form"> 
      <div class="form-group"> 
       <label for="inputEmail1" class="col-md-4 control-label"> 
        Refund Policies: </label> 
       <div class="col-md-6"> 
        <asp:FileUpload ID="furefundpolicies" runat="server" /> 

       </div> 
       <div class="col-md-6"> 
        <asp:Label ID="Label1" runat="server" Text="No file yet, Please Click Upload before using DELETE button"></asp:Label><br /> 
       <asp:Button ID="btnrefunfpolicy" runat="server" Text="DELETE" class="btn btn-default" OnClick="deleterefundpolicies" /> 
       </div> 
      </div> 

      <div class="form-group"> 
       <label for="inputEmail1" class="col-md-4 control-label"> 
        Privacy Policies</label> 
       <div class="col-md-6"> 
        <asp:FileUpload ID="fuprivacypolicies" runat="server" /> 
       </div> 
        <div class="col-md-6"> 
        <asp:Label ID="Label2" runat="server" Text="No file yet, Please Click Upload before using DELETE button"></asp:Label><br /> 
       <asp:Button ID="btnprivacypolicy" runat="server" Text="DELETE" class="btn btn-default" OnClick="deleteprivacypolicies" /> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="inputEmail1" class="col-md-4 control-label"> 
        Terms</label> 
       <div class="col-md-6"> 
       <asp:FileUpload ID="futerms" runat="server" /> 
       </div> 
        <div class="col-md-6"> 
        <asp:Label ID="Label3" runat="server" Text="No file yet, Please Click Upload before using DELETE button"></asp:Label><br /> 
       <asp:Button ID="btnterms" runat="server" Text="DELETE" class="btn btn-default" OnClick="deleteterms" /> 
       </div> 
      </div> 

      <div class="form-group"> 
       <label for="inputEmail1" class="col-md-4 control-label"> 
        Trial Period</label> 
       <div class="col-md-6"> 

        <asp:TextBox ID="txttrailperoid" runat="server" class="form-control"></asp:TextBox> 
        <%-- <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txttrailperoid" 
         Display="Dynamic" ErrorMessage="Please Enter Value"></asp:RequiredFieldValidator>--%> 
       </div> 
      </div> 
      <div class="col-md-10"> 
       <asp:Label ID="lblmsg" runat="server" Visible="false" class="alert alert-success form-group"></asp:Label> 
      </div> 
      <div class="form-group"> 
       <label for="inputEmail1" class="col-md-4 control-label"> 
        &nbsp;</label> 
       <div class="col-md-6"> 
        <asp:Button ID="btnSubmit" runat="server" Text="SAVE" class="btn btn-default" OnClick="btnSubmit_Click" /> 
        <asp:Button ID="btnCancel" runat="server" Text="CANCEL" CausesValidation="false" 
         class="btn btn-default" OnClick="btnCancel_Click" /> 
       </div> 
      </div> 
      </form> 
     </div> 
    </div> 
</div> 

И теперь у вас есть код за

public string FilePath; 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 
    protected void btnSubmit_Click(object sender, EventArgs e) 
    { 

     //General_SettingsBL gb = new General_SettingsBL(); 

     string fn = Path.GetFileName(fuprivacypolicies.PostedFile.FileName); 
     string SaveLocation = Server.MapPath("UploadedCSVFiles") + "\\" + fn; 
     FileInfo fi = new FileInfo(SaveLocation); 


     fuprivacypolicies.PostedFile.SaveAs(SaveLocation); 
     fuprivacypolicies.PostedFile.InputStream.Dispose(); 
     Session["fuprivacypoliciesPath"] = SaveLocation; 
     Label2.Text = "Uploaded file : "+fn; 


     // gb.Privacy_Policies = System.IO.Path.GetExtension(fuprivacypolicies.FileName); 



     // gb.Privacy_Policies = System.IO.Path.GetExtension(fuprivacypolicies.FileName); 
     // gb.Refund_Policies = System.IO.Path.GetExtension(furefundpolicies.FileName); 
     // gb.Terms = System.IO.Path.GetExtension(futerms.FileName); 
     // gb.Trial_Period = decimal.Parse(txttrailperoid.Text); 

     // gb.Insert(); 
     lblmsg.Visible = true; 
     lblmsg.Text = "Records Inserted Successfully"; 
     Label1.Text = "Uploaded file : " + fn; 



     string ff = Path.GetFileName(furefundpolicies.PostedFile.FileName); 
     string SaveLocation2 = Server.MapPath("UploadedCSVFiles") + "\\" + ff; 


     furefundpolicies.PostedFile.SaveAs(SaveLocation2); 
     furefundpolicies.PostedFile.InputStream.Dispose(); 
     Session["furefundpoliciesPath"] = SaveLocation2; 
     Label2.Text = "Uploaded file : " + ff; 




     string ft = Path.GetFileName(futerms.PostedFile.FileName); 
     string SaveLocation3 = Server.MapPath("UploadedCSVFiles") + "\\" + ft; 


     futerms.PostedFile.SaveAs(SaveLocation3); 
     futerms.PostedFile.InputStream.Dispose(); 
     Session["futermsPath"] = SaveLocation3; 
     Label3.Text = "Uploaded file : " + ft; 




    } 

    protected void btnCancel_Click(object sender, EventArgs e) 
    { 

    } 

    protected void deleterefundpolicies(object sender, EventArgs e) 
    { 
     //string fn = Path.GetFileName(fuprivacypolicies.PostedFile.FileName); 
     //string SaveLocation = Server.MapPath("UploadedCSVFiles") + "\\" + fn; 
     //FileInfo fi = new FileInfo(SaveLocation); 
     ////furefundpolicies.ID = null; 
     //fi.Delete(); 
     if (Session["furefundpoliciesPath"] != null && File.Exists(Session["furefundpoliciesPath"].ToString())) 
     { 
      File.Delete(Session["furefundpoliciesPath"].ToString()); 

      Label1.Text = "File deleted"; 
     } 

    } 

    protected void deleteprivacypolicies(object sender, EventArgs e) 
    { 
     //fuprivacypolicies.ID = null; 
     // fuprivacypolicies = new FileUpload(); 
     if (Session["fuprivacypoliciesPath"]!=null&&File.Exists(Session["fuprivacypoliciesPath"].ToString())) { 
      File.Delete(Session["fuprivacypoliciesPath"].ToString()); 

      Label2.Text = "File deleted"; 
     } 
    } 

    protected void deleteterms(object sender, EventArgs e) 
    { 
     //futerms.ID = null; 
     // futerms = new FileUpload(); 
     if (Session["futermsPath"]!=null&&File.Exists(Session["futermsPath"].ToString())) 
     { 
      File.Delete(Session["futermsPath"].ToString()); 
      Label3.Text = "File deleted"; 
     } 
    } 

При этом файл удаляется отдельно в зависимости от нажатой кнопки! Дайте ему попробовать

Смежные вопросы