salut tout le monde
je développe un site intranet, j utilise ASP.NEt 2.0, le site contient des documents dans une base de données sql server 2005, pour pouvoir les télécharger je les ai listé dans une GridView et j ai mit une colonne de type ButtonField ou on click pour télécharger les docs, jusqu à mnt tout va bien,
le problème c est quand j écris mon fichier dans le PC client j ai une erreur du type "L'accès au chemin d'accès 'C:\document.doc' est refusé" à cause de la sécurité du système:
voila mon code
int index = Convert.ToInt32(e.CommandArgument); // index de la ligne séléctionnée
string txt = GridView1.DataKeys[index].Value.ToString();
string path ="C:\\document.doc";
FileStream Stream = new FileStream(path, FileMode.Create, FileAccess.Write);
string Req = "select document from rapport where doc_id='" + txt + "'";
try
{
// write the stream in the
try {
SqlConnection con = new SqlConnection((ConfigurationManager.ConnectionStrings["ConnString"]).ConnectionString);
con.Open();
SqlCommand command = new SqlCommand(Req, con);
command.CommandType = CommandType.Text;
ms = new MemoryStream((Byte[])command.ExecuteScalar());
con.Close();
}
catch{ }
}
catch { }
ms.WriteTo(Stream);
ms.Close();
ms.Dispose();
Stream.Close();
Stream.Dispose();
Response.Clear();
Response.ContentType = "application/vnd.ms-word";
Response.AddHeader("Content-Disposition", "attachment; filename=Rapport.doc");
Response.Flush();
Response.WriteFile(path);
quand je travail localement il y a aucun problème, mais quand je me connecté depuis une machine cliente il y a ce problème,je me demande est ce que c' est la bonne méthode pour télécharger les document de ma base? et ou est le problèmes avec mon code?
Merci d'avance