Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1879 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  WSS 3.0 : upload d'un fichier depuis un poste client vers un site SP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

WSS 3.0 : upload d'un fichier depuis un poste client vers un site SP

n°1751006
KibitO
Posté le 25-06-2008 à 11:17:59  profilanswer
 

Bonjour à tous,
 
En spécifiant l'emplacement d'un fichier dans une application console, le transfert se fait bien vers le site ou laz bibliothèque spécifiée mais pas depuis une application web avec un composant FileUpload.
 
L'erreur retournée est la suivante (problème de sécurité et de compte utilisé probablement) :
 
http://kibito.free.fr/images_net/prog/erreurUploadFileToSPList2.jpg
 
J'ai créé une page web UploadFile.aspx qui comporte uniquement le composant FileUpload et un bouton pour l'envoi de fichier. J'utilise cependant l'élévation de privilèges pour accéder au site SharePoint, mais cela ne marche pas non plus.. Voici le code lors du clic sur le bouton pour envoyer le document :
 
 

Code :
  1. protected void Button1_Click(object sender, EventArgs e)
  2.     {
  3.         //String savePath = ConfigurationManager.AppSettings.Get("fileUploadFolder" );
  4.         String savePath = @"C:\temp\uploadFiles";
  5.         if (FileUpload1.HasFile)
  6.         {
  7.             String fileName = FileUpload1.FileName;
  8.             savePath += fileName;
  9.             // Call the SaveAs method to save the  
  10.             // uploaded file to the specified path.
  11.             // This example does not perform all
  12.             // the necessary error checking.               
  13.             // If a file with the same name
  14.             // already exists in the specified path,   
  15.             // the uploaded file overwrites it.
  16.            
  17.            
  18.             //FileUpload1.SaveAs(savePath);
  19.            
  20.             // Notify the user of the name of the file
  21.             // was saved under.
  22.             Response.Write("Your file was saved as " + fileName + " " );
  23.             Response.Write("<a href='http://serveur:port/uploadFiles/" + fileName + "'>" + fileName + "</a>" );
  24.             // tests
  25.             SPSecurity.RunWithElevatedPrivileges(delegate()
  26.             {
  27.                 using (SPSite site = new SPSite("http://serveur:portSP/test" ))
  28.                 { 
  29.                    
  30.                     if (FileUpload1.PostedFile == null)
  31.                         return;
  32.                     SPWeb web = site.OpenWeb();
  33.                     SPFolder folder = web.GetFolder("Documents partages" );
  34.                     SPUser user = site.Owner;
  35.                     FileStream fs = new FileStream(@"C:\tempuploads\test.doc", FileMode.Open);
  36.                     byte[] fileContents = new byte[(int)fs.Length];
  37.                     fs.Read(fileContents, 0, (int)fs.Length);
  38.                     fs.Close();
  39.                     SPFile file = folder.Files.Add(@"C:\tempuploads\test.doc", fileContents, user, user, DateTime.Now.ToUniversalTime(), DateTime.Now.ToUniversalTime());
  40.                    
  41.                 }
  42.             });
  43.            
  44.             //FileInfo info = new FileInfo(ConfigurationManager.AppSettings.Get("fileUploadFolder" ) + fileName);
  45.             //info.Delete();
  46.         }
  47.         else
  48.         {
  49.             // Notify the user that a file was not uploaded.
  50.             Response.Write("You did not specify a file to upload." );
  51.         }
  52.     }


 
Avez-vous déjà effectué un module qui permettait le transfert de fichiers un peu comme je l'expose afin de résoudre ce problème ?
 
Merci de vos réponses.


Message édité par KibitO le 25-06-2008 à 11:22:15
mood
Publicité
Posté le 25-06-2008 à 11:17:59  profilanswer
 

n°1751155
KibitO
Posté le 25-06-2008 à 15:06:37  profilanswer
 

Problème résolu en mettant une propriété de la liste ou du site à true : AllowUnsafeUpdates. Cela permet d'accorder des droits lors d'une action sur une liste SP.
 
Je l'avais déjà utilisé auparavant mais simplement en mode Web. Beaucoup de temps perdu pour si peu finalement ^^
 
Voici les sources :
 
http://blogs.msdn.com/mpoulson/arc [...] 99504.aspx
http://moldenco.blogspot.com/2007/ [...] es-to.html
http://www.infopathdev.com/forums/ [...] aspx#25687
http://farhanfaiz.wordpress.com/20 [...] sing-code/


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  WSS 3.0 : upload d'un fichier depuis un poste client vers un site SP

 

Sujets relatifs
[VBA] Ouvrir fichier Excel - même répertoireUtilité de "global" en haut d'un fichier PHP
Contenu d'une page Word vers excel[HTML] Site basique & Référencement Google
Lecteur Mp3 en html sur site a base de nuked-klanVirus dans les pages php de mon site?!
creation de siteProblème pour un script d'upload de fichier
creer une popup a partir d'un fichier .csv 
Plus de sujets relatifs à : WSS 3.0 : upload d'un fichier depuis un poste client vers un site SP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR