Tôi đã tạo tệp .cshtml Razor toàn cầu trong thư mục App_Code của dự án MVC để khai báo hàm @helper. Vấn đề là tôi không thể sử dụng Html.ActionLink (hoặc các phần mở rộng khác) trong các hàm trợ giúp. Tôi đã cố gắng để nhập khẩu các lớp học thông qua một @using nhưng điều đó không làm việc. Bất kỳ ý tưởng?Html.ActionLink không thể được sử dụng trong trình trợ giúp Razor toàn cầu
6
A
Trả lời
7
Bạn có thể thêm dòng sau vào helper của bạn, để xác định Html
var Html = ((System.Web.Mvc.WebViewPage)WebPageContext.Current.Page).Html;
+0
Tha nks, quá tệ không có một giải pháp đẹp hơn :) – Marthijn
2
Tiếp tục để câu trả lời được chấp nhận, để làm cho @Html sẵn trong suốt tập tin helper:
@using System.Web.Mvc.Html
...
@functions {
protected static new System.Web.Mvc.HtmlHelper Html
{
get
{
return ((System.Web.Mvc.WebViewPage)WebPageContext.Current.Page).Html;
}
}
}
Các vấn đề liên quan
- 1. Gọi Html.ActionLink trong trình trợ giúp HTML tùy chỉnh
- 2. Khi nào chúng tôi nên sử dụng Trình trợ giúp Html, Trình trợ giúp của Razor hoặc Chế độ xem một phần?
- 3. Không thể gỡ lỗi trình trợ giúp Razor - dường như IIS không biên dịch với các biểu tượng gỡ lỗi?
- 4. Cú pháp trình trợ giúp HTML của MVC Razor: Viewbag trong Html. Tham số đối tượng được ẩn
- 5. Giúp hiểu cờ toàn cầu trong perl
- 6. Nhận văn bản thô bằng cách sử dụng @ Html.ActionLink trong Razor/MVC3?
- 7. Có thể sử dụng hai trình trợ giúp bản ghi cho loại chuỗi không?
- 8. Sử dụng trình trợ giúp Rails để hiển thị partials
- 9. Các lớp trợ giúp CSS toàn cầu có phải là một ý tưởng hay không?
- 10. Trợ giúp phiên CodeIgniter, cookie không an toàn?
- 11. Làm thế nào để khai báo một biến toàn cầu có thể được sử dụng trong toàn bộ chương trình
- 12. Tại sao các phương pháp trợ giúp thường được sử dụng trong Javascript?
- 13. Cách áp dụng đầu vào có email loại tới Trình trợ giúp HTML trong Asp.net MVC3 Razor
- 14. Sử dụng Razor không MVC
- 15. ASP.NET Razor C# Html.ActionLink để tạo liên kết rỗng
- 16. Nhận thông tin yêu cầu trong trợ giúp xem
- 17. Sử dụng Trình trợ giúp biểu mẫu đường ray với Lớp tùy chỉnh được nối tiếp
- 18. Sử dụng Trình trợ giúp có thể chỉnh lại jQuery trên Hộp thoại
- 19. Đường dẫn động trong Trình trợ giúp
- 20. android-studio không thể tìm thấy giao diện trợ giúp để sử dụng trong lớp
- 21. Sử dụng Html.ActionLink với RouteValues
- 22. Bạn có thể truyền EntityManagers được tiêm vào các lớp trợ giúp của bean EJB và sử dụng nó không?
- 23. "Không thể sử dụng tại khoản TRÌNH TỰ toàn cầu" với mysql đặt hàng
- 24. Dao cạo không thể tìm thấy trình trợ giúp HTML của tôi
- 25. Làm cách nào để sử dụng Trình trợ giúp HTML ValidationMessage ASP.NET MVC bên trong trình trợ giúp tùy chỉnh của riêng tôi?
- 26. Trợ giúp Sử dụng Optparser-in khi không có đối số được đưa ra
- 27. Cách tạo trình trợ giúp trình bao bọc xung quanh chức năng trợ giúp Url.Content?
- 28. sử dụng hgignore toàn cầu
- 29. Rails: làm cho trình trợ giúp URL tùy chỉnh hoạt động như người trợ giúp _path & _url được xây dựng
- 30. Tôi có thể trả về một chuỗi bằng cú pháp @helper trong Razor không?
xem câu hỏi này - http://stackoverflow.com/questions/4710853/using-mvc-htmlhelper-extensions-from-razor-declarative-views –