1

SOAP ツールボックス (サポートされなくなりました) を使用して Web サービスへの呼び出しを行っていた Excel 2003 スプレッド シートを、VSTO を使用して Excel 2010 に変換しました。

スプレッドシートはうまく機能し、(ほとんど)本来の機能を果たします。今は、Web サイトからユーザーが利用できるようにしたいと考えています。

まだ利用可能な 2003 バージョンを提供するのと同じはずだと思っていたので、基本的には Excel 2003 スプレッドシートのダウンロード ボタンを複製しました。

2010 スプレッドシートでこれを試すと、次のような Excel エラーが表示されます。

"Excel は "SpreadSheet_name.xlsx" に判読できないコンテンツを検出しました。このブックのコンテンツを復元しますか? このブックの発行元が信頼できる場合は、[はい] をクリックしてください。

その後、Excel で問題が修正され、スプレッドシートを通常どおり使用できるようになります。

ダウンロード元のソース フォルダーからスプレッドシートを開くと、上記のエラーが修正されてファイルが保存されると、まったくエラーなく開きます。

これは、現在の Excel 2003 ダウンロード ボタンに使用されるコードです -

Response.WriteFileAsAttachment("application/ms-excel", Server.MapPath("~/pathname/Spreadsheet_2003.xls"), 8192);
Response.End();

これは、Excel 2010 の更新された MIME 情報を含む 2010 のダウンロード ボタンのクリックに対して私が持っているものです -

Response.WriteFileAsAttachment("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", Server.MapPath("~/pathname/Spreadsheet_2010.xls"), 8192);
Response.End();

さまざまなフォーラムで提案されたいくつかのことを試しましたが、すべて同じ結果になりました。

これをテストするために、VS 2010 で実行されている C# と ASP.Net を使用しています。

ヘルプやアドバイスをいただければ幸いです。

ありがとう、ジョージ。

4

1 に答える 1

0

ダウンロードでこの問題を引き起こすリモート アクセス通信に問題があります。それは会社が修正するものではないので、私たちはそれと一緒に暮らし、それを回避する必要があります. :(

于 2012-06-27T10:23:58.553 に答える