2015-09-11 15 views
5

Tôi đã đọc về hỗ trợ mới cho Trình trợ giúp thẻ trong MVC 6 và bây giờ cần phải tạo của riêng tôi. Tôi thấy rằng việc xây dựng trong những người giúp đỡ thẻ cho các phần tử HTML hiện đều bắt đầu bằng "asp-"Tôi có nên sử dụng trình hỗ trợ thẻ ASP.Net 5 MVC 6 tùy chỉnh của mình không?

Ví dụ: <a asp-controller="Home" asp-action="Index">Home</a>

Nhưng những gì về những người giúp đỡ thẻ tùy chỉnh của riêng tôi. Tôi cũng nên tiền tố những người có "asp-" để cho thấy rằng nó đang chạy trên máy chủ. Hoặc điều này có nên được dành riêng cho các thuộc tính khung công tác không? Tôi có nên tạo dự án của riêng mình/công ty có tên là tiền tố thay thế không?

Có hướng dẫn nào về chủ đề này mà tôi đã bỏ lỡ không?

+0

Cảm ơn đã sửa @Taylor Mullen! hy vọng điều đó là đủ để làm cho nó mở cửa trở lại. Tôi thực sự thực sự muốn biết câu trả lời trước khi tôi đi và đưa thẻ trợ giúp tùy chỉnh của tôi tất cả thông qua mã của tôi chỉ để thay đổi chúng sau này. Thành thật mà nói tôi không nghĩ rằng có bất kỳ hướng dẫn chính thức về điều này vào lúc này. –

Trả lời

6

Trình trợ giúp thẻ nhắm mục tiêu existing HTML elements nên mở đầu tên thuộc tính với tiền tố cho biết thuộc tính là phụ gia và chạy trên máy chủ. Ví dụ, người xây dựng trong ASP.NET 5 Tag Helpers sử dụng tiền tố “asp-”. Tiền tố “asp-” không được coi là tiền tố dành riêng, vì vậy các nhà phát triển có thể sao chép quy ước đó. Một số nhóm sẽ thích sử dụng quy ước đặt tên của riêng họ hơn để phân biệt Người hỗ trợ thẻ của họ.

Nếu Trình trợ giúp thẻ nhắm mục tiêu phần tử tùy chỉnh thì thuộc tính không được đặt trước. Các phần tử tùy chỉnh chỉ được xử lý trên máy chủ, do đó bạn không cần tiền tố để biểu thị quá trình xử lý máy chủ. Một ví dụ tốt là EnvironmentTagHelper. Đánh dấu sau đây xuất phát từ tệp Lượt xem/Chia sẻ/_Layout.cshtml được tạo bởi ứng dụng web ASP.NET mới.

<environment names="Development"> 

Xem thêm Authoring Tag Helpers

+0

Cảm ơn bạn, thực sự đánh giá cao việc bạn xóa nó cho tôi trước khi tôi đi quá xa với một dự án. –

0

Mỗi TagHelper nhắm mục tiêu một hoặc nhiều phần tử HTML hoặc thẻ tùy chỉnh cụ thể.

ví dụ hãy xem AnchorTagHelper, Bạn có thể thấy, TargetElementAttribute được sử dụng để kết hợp TagHelper này với HTML chuẩn một yếu tố:

[HtmlTargetElement("a", Attributes = ActionAttributeName)] 
//... 
public class AnchorTagHelper : TagHelper 

Vì vậy, thẻ tùy chỉnh helper của bạn có riêng của mình trước khi sửa chữa.

+1

Chính sách MS về điều này là OK sử dụng tiền tố "asp-". Xem câu trả lời của tôi dưới đây mà đi vào tài liệu TH của chúng tôi. – RickAndMSFT

+1

@ RickAnd-MSFT Cảm ơn câu trả lời của bạn :) –

Các vấn đề liên quan