Html5 data- * с asp.net mvc TextboxДля атрибутов html

Как добавить атрибуты data-* html с помощью TextboxFor?

Это то, что у меня есть:

@Html.TextBoxFor(model => model.Country.CountryName, new { data-url= Url.Action("CountryContains", "Geo") })

Как вы видите, - вызывает проблему здесь data-url. Каким образом это происходит?

Ответ 1

Вы можете использовать подчеркивание (_), и помощник достаточно интеллектуальный, чтобы сделать остальные:

@Html.TextBoxFor(
    model => model.Country.CountryName, 
    new { data_url = Url.Action("CountryContains", "Geo") }
)

И для тех, кто хочет добиться того же в предыдущих версиях ASP.NET MVC 3, они могли:

<%= Html.TextBoxFor(
    model => model.Country.CountryName, 
    new Dictionary<string, object> { 
        { "data-url", Url.Action("CountryContains", "Geo") } 
    }
) %>