У меня есть результат действия ExcelResult, который возвращает документы Microsoft Excel, основанные на Stephen Walther tip. В основном он просто пишет поток для ответа. При отладке VS 2010 (ASP.NET Dev Server), она работает нормально, но когда я запускаю его на поле IIS 6, я получаю следующее сообщение об ошибке:Запустить MVC-контроллер без просмотра?
The view 'GenerateExcel' or its master was not found. The following locations were searched: ~/Views/Home/GenerateExcel.aspx ~/Views/Home/GenerateExcel.ascx ~/Views/Shared/GenerateExcel.aspx ~/Views/Shared/GenerateExcel.ascx
Там нет связанных View, и поэтому нет файла , но не должно быть. Что я делаю не так?
UPDATE
Просто возвращение пустоты вместо ActionResult, я больше не имею эту проблему. Вместо того, чтобы возвращать ExcelResult, я явно называю его методом ExecuteResult, который записывает в выходной поток.
Перед
public ActionResult GenerateExcel()
{
return this.Excel(parameters);
}
После
public void GenerateExcel()
{
ExcelResult excelResult = this.Excel(parameters);
excelResult.ExecuteResult(null);
}
После этого я имел проблемы безопасности с моей проверки подлинности NTLM, но они 'ушли' (то есть я ожидаю, что они вернутся). Пока что все работает нормально.
Разве вы не чувствуете, что немного сложно сказать, что вы делаете неправильно, не показывая, что вы делаете (какой-то код или что-то еще)? К сожалению, у меня нет телепатических навыков. –
Ну вы можете в основном просмотреть код по ссылке. Он возвращает ActionResult, который действительно является ExcelResult, метод ExecuteResult записывается в выходной поток. – DougJones