2010-09-16 8 views
0

RE: ASP: Téléversement du contrôle. Téléchargement dans un sous-dossier de bibliothèque de documents SharePoint et erreur FILE NOT FOUNDASP: Charger le contrôle. Téléchargement dans un sous-dossier de la bibliothèque de documents SharePoint et erreur FILE NOT FOUND

Deux problèmes, apparemment sans rapport.

J'ai sous-dossiers comme celui-ci/ApplicantDocuments/20 et/ApplicantDocuments/21 (où 20 et 21 sont mes sous-dossiers et ApplicantDocuments est ma bibliothèque.

  1. La fonction ci-dessous est erroring avec le fichier non trouvé, mais J'ai confirmé que j'envoie le chemin entièrement qualifié (c'est-à-dire c: \ test.txt) à System.IO.FileStream content = System.IO.File.Open (documentFileName, System.IO.FileMode.Open);

  2. Même si cela a fonctionné, en regardant le code, je n'utilise pas argument foldername.Je passe 20 à l'argument.Comment puis-je m'assurer qu'il télécharge dans le sous-dossier 20 de DemandantDocuments?

Le fichier est sur mon client local et je suis sous Windows 7/IE 8.

Merci. Test juste dans l'environnement de test.

Serrera le code une fois qu'il fonctionne.

[code] public void UploadDocumentToSite (string foldername, string documentFileName) { SPSite sitecollection = new SPSite ("https://xxxxxx"); SPWeb web = siteCollection.OpenWeb(); //SPSite.AllowUnsafeUpdates = true; //Web.AllowUnsafeUpdates = true; chaîne Lib = "ApplicantDocuments"; SPFolder destFolder = web.GetFolder (Lib); sendmail (documentFileName + "" + nom de fichier); System.IO.FileStream content = System.IO.File.Open (documentFileName, System.IO.FileMode.Open); destFolder.Files.Add (documentFileName, content, true); } [/ code]

Répondre

0
string Lib = "ApplicantDocuments"; 
SPFolder destFolder = web.GetFolder(Lib); 

Nous avons deux surcharges de SPWeb.GetFolder(). See Here L'un prend GUID et l'autre prend la chaîne qui contient l'URL relative au serveur pour le dossier. Le meilleur moyen est d'obtenir le dossier en utilisant GUID. Si vous souhaitez obtenir le nom du dossier, vous pouvez également utiliser le code du dossier.

mydoclib = get reference to the doc lib here. then 
SPFolder destFolder = mydoclib.rootFolder.SubFolders["20"]; 
Questions connexes