Je souhaite télécharger un fichier du serveur vers un hôte local.Télécharger le fichier depuis le serveur asp.net
i ont un code du filet qui devrait fonctionner, mais ne fonctionne pas
protected void Button4_Click(object sender, EventArgs e)
{
//To Get the physical Path of the file(test.txt)
string filepath = Server.MapPath("test.txt");
// Create New instance of FileInfo class to get the properties of the file being downloaded
FileInfo myfile = new FileInfo(filepath);
// Checking if file exists
if (myfile.Exists)
{
// Clear the content of the response
Response.ClearContent();
// Add the file name and attachment, which will force the open/cancel/save dialog box to show, to the header
Response.AddHeader("Content-Disposition", "attachment; filename=" + myfile.Name);
// Add the file size into the response header
Response.AddHeader("Content-Length", myfile.Length.ToString());
// Set the ContentType
Response.ContentType = ReturnExtension(myfile.Extension.ToLower());
// Write the file into the response (TransmitFile is for ASP.NET 2.0. In ASP.NET 1.1 you have to use WriteFile instead)
Response.TransmitFile(myfile.FullName);
// End the response
Response.End();
}
}
private string ReturnExtension(string fileExtension)
{
switch (fileExtension)
{
case ".htm":
case ".html":
case ".log":
return "text/HTML";
case ".txt":
return "text/plain";
case ".doc":
return "application/ms-word";
case ".tiff":
case ".tif":
return "image/tiff";
case ".asf":
return "video/x-ms-asf";
case ".avi":
return "video/avi";
case ".zip":
return "application/zip";
case ".xls":
case ".csv":
return "application/vnd.ms-excel";
case ".gif":
return "image/gif";
case ".jpg":
case "jpeg":
return "image/jpeg";
case ".bmp":
return "image/bmp";
case ".wav":
return "audio/wav";
case ".mp3":
return "audio/mpeg3";
case ".mpg":
case "mpeg":
return "video/mpeg";
case ".rtf":
return "application/rtf";
case ".asp":
return "text/asp";
case ".pdf":
return "application/pdf";
case ".fdf":
return "application/vnd.fdf";
case ".ppt":
return "application/mspowerpoint";
case ".dwg":
return "image/vnd.dwg";
case ".msg":
return "application/msoutlook";
case ".xml":
case ".sdxl":
return "application/xml";
case ".xdp":
return "application/vnd.adobe.xdp+xml";
default:
return "application/octet-stream";
}
}
maintenant lorsque le bouton est cliqué sur le fichier doit être téléchargé à partir du serveur à l'ordinateur hôte local ... mais rien ne semble se produire ...
i ont la test.txt sur le bureau du sérère ... l'option de fichier de sauvegarde ne vient pas aussi du côté client ..
je publie les fichiers et le mettre dans le dossier inetpub du serveur et exécutez l'interface graphique du client côté .. tout fonctionne, sauf ce ...
suggestions ... s'il vous plaît aider
ce programme télécharge un fichier s'il est présent dans le dossier Inetpub .. au lieu que je veux télécharger de tout emplacement dans le serveur ...
??
Les applications Web de confiance moyenne ne peuvent pas accéder aux fichiers en dehors du chemin d'application. Peut-être essayer d'élever les autorisations de votre application: http://msdn.microsoft.com/en-us/library/tkscy493.aspx Bien sûr, cela provoque de nouvelles préoccupations de sécurité. –
mais je me connecte et usurpe l'identité de l'utilisateur ... s'il n'est pas usurpé il ne pourra pas télécharger ... il n'y a rien d'autre .. – user175084