いくつかの成功を収めて、この提案されたコードを使用して、グリッドビューを CSV (または私の場合は TSV) にエクスポートしています。
ボタンをクリックすると、ページの投稿が戻ってきて、TSV が配信されます。偉大な。
ただし、そのポストバックの後、他のコントロール (autopostback が true に設定されたドロップダウンリストとボタン - 一方が JavaScript トリガーのポストバック ボタンを送信) はサーバーにポストバックしません。
考えられる手がかり: Google Chrome の [ネットワーク] タブを見ると、CSV の POST は「キャンセル済み」と見なされます。
彼らが支援を提供する場合に備えて、ここに CSV の REQUEST および RESPONSE ヘッダーがあります - セキュリティに関連するいくつかを空白にしました:
リクエスト:
POST /Perspective/SitePages/User_Email_List.aspx HTTP/1.1
Host: as-sharepoint
Connection: keep-alive
Content-Length: 8740
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Origin: http://as-sharepoint
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22
Content-Type: application/x-www-form-urlencoded
DNT: 1
Referer: http://as-sharepoint/Perspective/SitePages/User_Email_List.aspx
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: WSS_KeepSessionAuthenticated={xxx}
応答:
HTTP/1.1 200 OK
Cache-Control: private
Transfer-Encoding: chunked
Content-Type: application/text
Server: Microsoft-IIS/7.5
SPRequestGuid: xxx
Set-Cookie: WSS_KeepSessionAuthenticated={xxx}; path=/
X-SharePointHealthScore: 1
Set-Cookie: WSS_KeepSessionAuthenticated={xxx}; path=/
Content-Disposition: attachment;filename=EmailList.tsv
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.4762
Date: Tue, 19 Mar 2013 13:40:18 GMT
その他の可能な関連情報:
- 私が呼び出しているメソッドは、ページのタグにあります (これは分離コードを困難にする SharePoint Web サイトです)
- これは、チャンク ダウンロードが正しく閉じられていないことに関連しているように感じますが、確信が持てません。
さらに情報が必要な場合は、無料で提供します。