Có cú pháp nào đẹp hơn khi tạo các phần tử có thuộc tính gạch nối thay vì sử dụng:
<%= Html.TextBox ("name", value, new Dictionary<string, object> { {"data-foo", "bar"} }) %>
Nhìn vào các thông số kỹ thuật HTML cho các tiêu chuẩn được đề xuất HTML 5 và WIA ARIA , có vẻ như dấu gạch nối trong các thuộc tính HTML đang được lên kế hoạch phổ biến hơn như một số loại khoảng cách tên đơn giản.
Ví dụ: HTML 5 đề xuất các thuộc tính tùy chỉnh có tiền tố data-
và WIA ARIA sử dụng aria-
tiền tố cho tất cả các thuộc tính WIA ARIA.
Khi sử dụng trình trợ giúp HTML trong ASP.NET MVC chẳng hạn như <%= Html.TextBox("name", value, new { attribute = attributeValue }) %>
đối tượng ẩn danh được chuyển đổi thành từ điển.
Thật không may trong C # không có hỗ trợ cho dấu gạch ngang trong tên, vì vậy cách thay thế duy nhất là tạo một từ điển. Cú pháp của nó rất dài dòng, có ai đã thấy một giải pháp thay thế đẹp hơn hoặc một cách đơn giản để thay đổi chức năng của các phần mở rộng HTML của ASP.NET MVC mà không cần phải viết lại toàn bộ phần mở rộng không?