แน่นอนว่าโซลูชันข้างต้นนั้นสมบูรณ์แบบ เพื่อหลีกเลี่ยงคำเตือนและสำหรับคอนโซลที่สะอาดฉันได้ทำหลังจากการเปลี่ยนแปลงในรหัสของฉัน (ซึ่งเกินไปสำหรับ ASP.NET Development Server) ฉันเขียนตัวจัดการพิเศษสำหรับสิ่งนี้:
PNGHandler.cs
class PNGHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
if(context.Request.HttpMethod == "GET")
{
string requestedFile = context.Server.MapPath(context.Request.FilePath);
FileInfo fileinfo = new FileInfo(requestedFile);
string contentType = "";
if (fileinfo.Exists && fileinfo.Extension.Remove(0, 1).ToUpper() == "PNG")
{
contentType = "image/png";
context.Response.ContentType = contentType;
context.Response.TransmitFile(requestedFile);
context.Response.End();
}
}
}
}
และเพิ่ม Http Handler ใน web.config ภายใต้ system.web
<system.web>
<httpHandlers>
<add path="*.png" verb="*" type="PNGHandler" />
</httpHandlers>
</system.web>