2012-05-03 19 views
1

どのようにして.xlsxファイルをエクスポートして、mvcからchromeを使用してExcelに変換できますか。それは.XLSのために動作しますがExcelの.xlsxファイルへのエクスポート

 Response.ClearContent(); 
     Response.AddHeader("content-disposition", "attachment; filename= Estimate1.xlsx"); 
     Response.ContentType = "application/excel"; 
     StringWriter sw = new StringWriter(); 
     HtmlTextWriter htw = new HtmlTextWriter(sw); 

     Response.Write(sw.ToString()); 
     Response.End(); 
+0

http://epplus.codeplex.com/ – user287107

+0

を見てみましょう我々はプロジェクトの一つでEPPlusを使用しており、素晴らしい作品です。 –

+0

私もそれを使用しています、それは素晴らしい機能もあります。すべてのダイアグラムオプションはまだ使用できません。または1000000を超える行が書き込まれている場合はエラーを返しません。さらに、数値が間違った方法で書かれているとExcelが壊れたxlsファイルに苦情を言います – user287107

答えて

2

を.xlsxのないIISでのMIMEタイプをチェック - ウェブサーバは、Office 2007の(およびそれ以上)を認識していないファイル拡張子とそれらを提供することを拒否します。

TechNetのRegister the 2007 Office system file format MIME types on serversを参照してください。あなたは「本当の」使用していない場合でも

はあなたのweb.configファイルにxslxのMIMEタイプを追加してみなければならないIIS:

<configuration> 
    <system.webServer> 
     <staticContent> 
      <mimeMap fileExtension=".xslx" mimeType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" /> 
     </staticContent> 
    </system.webServer> 
</configuration> 
+0

ローカルホストasp.netを使用していません – TMan

+0

@TMan Webサーバーが.xls MIME-Typeについて知っているように聞こえるように聞こえる.xslxの場合。 – Filburt

+2

@Tman - Filburtが指摘しているように、 "application/excel"の "content type"はxlsxファイルでは正しくありません:http://blogs.msdn.com/b/vsofficedeveloper/archive /2008/05/08/office-2007-open-xml-mime-types.aspx –

関連する問題