2010-11-09 1 views
1

Я использую smartxls в моем проекте asp.net с C#. У меня есть следующий код:Использование smartxls dll Я не могу изменить имя по умолчанию при открытии

var excel = new SmartXLS.WorkBook(); 
string projPath = AppDomain.CurrentDomain.BaseDirectory; 
excel.readXLSX(projPath + @"ExcelTemplates\" + template); 
excel.ImportDataTable(....) 
Response.ContentType = "application/vnd.ms-excel"; 
excel.write(Context.REsponse.OutputStream); 

Это, кажется, работает хорошо, мои данные открывается непосредственно на странице ссылку на моей странице ASPX, но при открытии, он автоматически именования файла в default.xls, я не могу понять, как изменить это имя. Я попробовал excel.setSheetName, а также excel.DefinedName, но ни одно из них не меняет имя листа excel при его открытии, оно всегда является default.xls. Кто-нибудь знает, как установить это имя с моим кодом выше? Я знаю, что могу переименовать, если я сохраню его непосредственно в пути, таком как C: \ filename в записи, но мне нужно, чтобы оно имело конкретное имя и автоматически открывалось для клиента нажатием кнопки или ссылки.

Благодаря

ответ

2

Вам необходимо указать имя файла Явно.

Response.ContentType = "application/vnd.ms-excel";

// добавить эту строку

Response.Addheader "Content-Disposition", "вложения, имя файла =" & youfileName & ".xls"

excel.write (Context.REsponse. OutputStream);

+1

Только то, что мне было нужно, tx – edosoft

 Смежные вопросы

  • Нет связанных вопросов^_^