The below code is working fine in local machine.. But is not woking in server.It throws error.(
To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".)
.aspx
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td colspan="2" align="left">
<b>Attachments</b>
</td>
</tr>
<tr>
<td width="15%">
</td>
<td align="left" width="25%">
<Ajax:AsyncFileUpload runat="server" ID="fileUpload1" />
<%-- <asp:FileUpload ID="fileUpload1" runat="server" />--%>
</td>
<td align="left" width="40%">
<asp:Button ID="btnUpload" CssClass="submit" runat="server" Text="Upload" OnClick="btnUpload_Click" />
</td>
</tr>
<tr>
<td colspan="3">
</td>
</tr>
<tr>
<td width="15%">
</td>
<td align="left" colspan="2">
<asp:GridView ID="gvDetails" runat="server" CssClass="nursing-frm-Attach" CellPadding="0"
ForeColor="Black" GridLines="Both" AutoGenerateColumns="false" DataKeyNames="FilePath"
OnRowDeleting="gvDetails_OnRowDeleting">
<HeaderStyle Height="30px" BackColor="#5C9CCC" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#666666" ForeColor="Black" HorizontalAlign="Center" />
<RowStyle ForeColor="Black" BackColor="#E5E9F5" />
<SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="Black" />
<AlternatingRowStyle ForeColor="Black" BackColor="#F7FBFE" />
<Columns>
<asp:TemplateField>
<HeaderTemplate>
No.
</HeaderTemplate>
<ItemTemplate>
<%# Container.DataItemIndex + 1 %>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FileName" HeaderText="FileName" />
<asp:TemplateField HeaderText="Download">
<ItemTemplate>
<asp:LinkButton ID="lnkDownload" runat="server" Text="Download" OnClick="lnkDownload_Click"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Delete">
<ItemTemplate>
<asp:ImageButton ID="imgbtnDelete" CommandName="Delete" Text="Edit" runat="server"
ButtonType="Image" ImageUrl="~/Images/delete-item.png" ShowDeleteButton="True"
ToolTip="Delete" Height="20px" Width="20px" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
</tr>
<tr>
<td colspan="3">
</td>
</tr>
</table>
.aspx.cs
public void BindGridviewData()
{
dt = oBALEpisode.GetUploadedFile(iPatientId, iEpisodeId);
gvDetails.DataSource = dt;
gvDetails.DataBind();
}
protected void btnUpload_Click(object sender, EventArgs e)
{
string reportPath = Server.MapPath("~/EpisodeFiles/");
string filename = Path.GetFileName(fileUpload1.PostedFile.FileName);
if (filename != String.Empty)
{
fileUpload1.PostedFile.SaveAs(reportPath + filename);
//fileUpload1.SaveAs(Server.MapPath("~/EpisodeFiles/" + filename));
oBALEpisode.SaveUploadedFile(filename, "EpisodeFiles/" + filename, iPatientId, iEpisodeId);
}
BindGridviewData();
}
// This button click event is used to download files from gridview
protected void lnkDownload_Click(object sender, EventArgs e)
{
LinkButton lnkbtn = sender as LinkButton;
WebClient req = new WebClient();
GridViewRow gvrow = lnkbtn.NamingContainer as GridViewRow;
string filePath = gvDetails.DataKeys[gvrow.RowIndex].Value.ToString();
Response.ContentType = "image/jpg";
Response.AddHeader("Content-Disposition", "attachment;filename=\"" + filePath + "\"");
byte[] data = req.DownloadData(Server.MapPath(filePath));
Response.BinaryWrite(data);
Response.End();
String RetFile = (Server.MapPath(filePath));
Response.End();
}
protected void gvDetails_OnRowDeleting(object sender, GridViewDeleteEventArgs e)
{
LinkButton lnkbtn = sender as LinkButton;
string filePath = gvDetails.DataKeys[e.RowIndex].Value.ToString();
String FilePath = (Server.MapPath(filePath));
File.Delete(FilePath);
oBALEpisode.DeleteFile(filePath, iPatientId, iEpisodeId);
BindGridviewData();
}
File Not upload in server side.. help me how fix that one...
Thanks