Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 保存Excel工作簿时出错_C#_Asp.net_Excel_Asp.net Mvc 4_Office Interop - Fatal编程技术网

C# 保存Excel工作簿时出错

C# 保存Excel工作簿时出错,c#,asp.net,excel,asp.net-mvc-4,office-interop,C#,Asp.net,Excel,Asp.net Mvc 4,Office Interop,我可以将excel文件与记录一起保存,但保存后出现异常 Application excelApp = new Application(); excelApp.Visible = true; var workbook = (_Workbook)(excelApp.Workbooks.Add(Type.Missing)); var worksheet = (_Worksheet)workbook.ActiveSheet;

我可以将excel文件与记录一起保存,但保存后出现异常

Application excelApp = new Application();
            excelApp.Visible = true;

            var workbook = (_Workbook)(excelApp.Workbooks.Add(Type.Missing));
            var worksheet = (_Worksheet)workbook.ActiveSheet;

            worksheet.Cells[1, 1] = "Firm ID";
            worksheet.Cells[1, 2] = "AccountNumber";
            worksheet.Cells[1, 3] = "Portfolio Name";
            worksheet.Cells[1, 4] = "Currency";
            worksheet.Cells[1, 5] = "Amount";
            worksheet.Cells[1, 6] = "Value Date";
            worksheet.Cells[1, 7] = "Offset Account Type";
            worksheet.Cells[1, 8] = "Offset Account Number";
            worksheet.Cells[1, 9] = "Description Code";
            worksheet.Cells[1, 10] = "Treatment Code";
    int row = 1;


            var result = DealingContext.PopulateUnitRebateData(unitRebate, Convert.ToDateTime(date)).ToList();
if (result.Count > 0)
            {
                foreach (var i in result)
                {
                    row++;

                    worksheet.Cells[row, 1] = i.FirmID;
                    worksheet.Cells[row, 2] = i.AccountNumber;
                    worksheet.Cells[row, 3] = i.PortfolioName;
                    worksheet.Cells[row, 4] = i.Currency;
                    worksheet.Cells[row, 5] = i.Amount;
                    worksheet.Cells[row, 6] = i.ValueDate;
                    worksheet.Cells[row, 7] = i.OffsetAccountType;
                    worksheet.Cells[row, 8] = i.OffsetAccountNumber;
                    worksheet.Cells[row, 9] = i.DescriptionCode;
                    worksheet.Cells[row, 10] = i.TreatmentCode;

                }

                excelApp.UserControl = true;
                excelApp.Save();
}
}
下面是错误堆栈

System.Runtime.InteropServices.COMException (0x800A03EC): Cannot access read-only document 'RESUME.XLW'. 
at Microsoft.Office.Interop.Excel.ApplicationClass.Save(Object Filename) 
at BestInvest.Admin.DataAccess.Repositories.RebateRepository.CreateFile(Boolean unitRebate, String date) in c:\Projects\Trunk\BestInvest.Admin.DataAccess\Repositories\RebateRepository.cs:line 156 
at BestInvest.WebSite.Administration.parameters.RebateFileProcess.btnCreateFile_Click(Object sender, EventArgs e) in c:\Projects\Trunk\BestInvest.WebSite.Administration\parameters\RebateFileProcess.aspx.cs:line 38 
at System.Web.UI.WebControls.Button.OnClick(EventArgs e) 
at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) 
at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) 
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) 
at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) 
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

你想把它保存在哪里?你知道你在服务器上运行这个吗?(不在客户端浏览器上?)您好,我允许最终用户将文件保存在他的机器上。弹出一个对话框,要求将文件保存到某个位置。当我保存它时,就会抛出异常