我已经阅读了基本的 MSDN 信息和一些教程。根据我目前所学到的,我已经能够制作两个 .ashx 处理程序,我称之为 ImageHandler.ashx 和 PDFHandler.ashx。它们会按照您的预期进行:分别返回图像或 PDF。对于这两个处理程序,在ProcessRequest
方法中,我context.Response.ContentType
分别设置为“image/jpeg”和“application/pdf”,然后用context.Response.BinaryWrite(bytes)
到目前为止这工作得很好。
但是,我想让用户能够下载任何文件,无论类型如何。我真的需要为每种文件类型创建不同的处理程序吗?
我可以只有一个 .ashx 文件,然后有一个基于文件类型的 switch 语句(我可以通过文件名的子字符串获得)?即使我这样做了,那么非标准文件类型(例如 .xyz 文件)呢?在这种情况下我应该设置什么content.Response.ContentType
?