0

RE: ASP: アップロード コントロール . SharePoint ドキュメント ライブラリ サブフォルダーへのアップロードと FILE NOT FOUND エラー

明らかに関係のない 2 つの問題。

/ApplicantDocuments/20 と /ApplicantDocuments/21 のようなサブフォルダーがあります (20 と 21 は私のサブフォルダーで、ApplicantDocuments は私のライブラリです。

  1. 以下の関数はファイルが見つからないというエラーを出していますが、System.IO.FileStream content = System.IO.File.Open(documentFileName, System. IO.FileMode.Open);

  2. コードを見て、それが機能したとしても、引数フォルダー名を使用していません。引数に 20 を渡します。ApplicantDocuments のサブフォルダー 20 にアップロードされることを確認するにはどうすればよいですか?

ファイルはローカル クライアントにあり、Windows 7/IE 8 を実行しています。

ありがとうございました。

テスト環境でテストするだけです。機能したらコードを引き締めます。

[コード] public void UploadDocumentToSite(string foldername, string documentFileName) { SPSite siteCollection = new SPSite(" https://xxxxxx "); SPWeb web = siteCollection.OpenWeb(); //SPSite.AllowUnsafeUpdates = true; //Web.AllowUnsafeUpdates = true; string Lib = "ApplicantDocuments"; SPFolder destFolder = web.GetFolder(Lib); sendmail(ドキュメントファイル名+" "+フォルダ名); System.IO.FileStream content = System.IO.File.Open(documentFileName, System.IO.FileMode.Open); destFolder.Files.Add(documentFileName, content, true); } [/コード]

4

1 に答える 1

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

SPWeb.GetFolder() の 2 つのオーバーロードがあります。See Here 1 つは GUID を取得し、もう 1 つはフォルダーのサーバー相対 URL を含む文字列を取得します。最善の方法は、GUID を使用してフォルダーを取得することです。フォルダーを名前で取得する場合は、フォルダー コードも使用できます。

mydoclib = get reference to the doc lib here. then
SPFolder destFolder = mydoclib.rootFolder.SubFolders["20"];
于 2010-09-21T10:21:32.270 に答える