Câu trả lời của Daniel T:
Chỉ ra rằng ánh xạ xử lý của IIS 7 khác với ánh xạ xử lý của IIS 6. Trong IIS 6, bạn có thể ánh xạ các trình xử lý của mình như thế này trong web.config
:
<configuration>
<system.web>
<httpHandlers>
<add verb="GET" path="*.jpg,*.gif,*.bmp,*.png" type="YourProject.ImageHandler" />
</httpHandlers>
</system.web>
</configuration>
Nó cho phép bạn sử dụng nhiều đường dẫn, phân tách bằng dấu phẩy. Trong IIS 7, nó nằm trong một phần khác:
<configuration>
<system.webServer>
<handlers>
<add name="ImageHandler for JPG" path="*.jpg" verb="GET" type="YourProject.ImageHandler" resourceType="File" />
<add name="ImageHandler for GIF" path="*.gif" verb="GET" type="YourProject.ImageHandler" resourceType="File" />
<add name="ImageHandler for BMP" path="*.bmp" verb="GET" type="YourProject.ImageHandler" resourceType="File" />
<add name="ImageHandler for PNG" path="*.png" verb="GET" type="YourProject.ImageHandler" resourceType="File" />
</handlers>
</system.webServer>
</configuration>
Nó không hỗ trợ nhiều đường dẫn, vì vậy bạn cần ánh xạ trình xử lý cho mỗi đường dẫn.
Bạn có thể sẽ phải kết thúc bản đồ nó ở cả hai nơi vì máy chủ dev nội bộ Visual Studio của sử dụng IIS 6 (hoặc IIS 7 chạy trong chế độ tương thích), trong khi các máy chủ sản xuất có lẽ là sử dụng IIS 7.
Nguồn
2015-03-23 11:10:32
này là câu trả lời cho tôi, tôi nâng cấp từ 3.5 & MVC 2 lên 4.5.2 & MVC 3. Tôi biết di chuyển đến phần , nhưng cho đến bây giờ tôi đã không nhận ra rằng việc sử dụng 'đường dẫn' đã để được thay đổi, cảm ơn! –
WillDud