如何导出文件excel是只读的

时间:2015-01-19 08:14:16

标签: c# asp.net-mvc export-to-excel

我正在通过StringBuilder导出文件excel。如何为文件excel设置只读。

这是我的代码:

byte[] fileContents = Encoding.UTF8.GetBytes(sb.ToString());

return File(fileContents, "application/vnd.ms-excel", "FileName" + DateTime.Now + ".xls");

2 个答案:

答案 0 :(得分:0)

你不能。您必须保护工作簿而不是将其设置为只读。文件属性不会通过HTTP保留,因此无法强制客户端在文件上设置只读属性(如果可以,客户端可以轻松删除它)。

有一些选项可以在服务器上保护工作簿,但Microsoft discourages the use of Office in ASP.NET,所以你必须寻找其他选项,例如EPPlus

答案 1 :(得分:0)

你不能通过C#打开Excel吗? 如果你可以的话;打开文件并使用

运行vba
SetAttr("TESTFILE", vbReadOnly)

并关闭文件。