datagrid导出到Excel的问题?
导出datagrid到excel
点导出按钮执行后提示错误信息行:Excel.Application excel= new Excel.Application();
异常详细信息:
System.UnauthorizedAccessException: 拒绝访问。
ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS 6 上为网络服务)。如果应用程序正在通过 <identity impersonate= "true "/> 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。
若要授予 ASP.NET 对文件的写访问权,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。
附导出代码:
Excel.Application excel= new Excel.Application();
excel.Application.Workbooks.Add(true);
for(int i=1;i <=ds.Tables[ "xx "].Columns.Count;i++)
{
excel.Cells[1,i]=ds.Tables[ "xx "].Columns[i-1].ColumnName.ToString();
}
for(int i=2;i <=ds.Tables[ "xx "].Rows.Count+1;i++)
for(int j=1;j <=ds.Tables[ "xx "].Columns.Count;j++)
{
excel.Cells[i,j]=ds.Tables[ "xx "].Rows[i-2][j-1].ToString();
}
excel.Visible =true;
是何原因?该怎样解决?
------解决方案--------------------开始> 运行> dcomcnfg> DCOM> Microsoft Excel> 右键> 属性> 安全> 自定义>
IIS_***User
------解决方案--------------------应该取配置excel 得net权限 提升权限