2012-04-09 2 views
0

Document Id機能が有効になっているサイトコレクションがあります。 ドキュメントは別のサイト(このドキュメントIDも有効になっている)からこのサイトコレクションにアーカイブされます。移動したファイルに関する唯一の情報は、ソースと宛先の間で同じドキュメントIDです。 Webリクエストを使用してファイルをダウンロードする必要がありますが、私のコードでは「401 Unauthorized Exception」が返されます。 私のコードは以下の通りです:http:// <site collection>/_ layouts/DocIdRedir.aspx?urlを含むファイルをWebリクエストを使用してダウンロードします。

string url = "http://<site collection>/_layouts/DocIdRedir.aspx?ID=<doc id>"; 
HttpWebRequest request = HttpWebRequest.Create(url) as HttpWebRequest;    
request.Method = "Get";    
request.PreAuthenticate = true; 
var credential= new NetworkCredential(username, password, domainname); 
request.Credentials = credential; 
HttpWebResponse response = request.GetResponse() as HttpWebResponse; 

私は認証のいくつかの並べ替えを与える必要がありますが、それを把握することができませんでした。 ご協力いただければ幸いです。

おかげで、よろしく Arjabh

答えて

0

SPSecurity.RunWithElevatedPrivileges(delegate() 
{ 
//code goes here 
}); 

ブロック

+0

の内側にあなたのコードを実行している回答に感謝をしてみたが、私はしませ内、カスタムの.NETアプリケーションを介してこのコードをしようとしていますSharePoint。 – arjabh

+0

ClientContextクラスを使用する必要があるようなサウンドがあります。これは、SharePoint環境の外部で使用するためのもので、ドキュメントライブラリを照会してデータを返すことができます。詳細はhttp://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.clientcontext.aspxを参照してください。 –

+0

HttpWebRequest(ブラウザがファイルをダウンロードする方法)を使用して行うことはできません。なぜなら、私はそれを非常に軽量なアプリケーションにする必要があるからです。 – arjabh

関連する問題