Html5 data- * com asp.net mvc TextboxPara atributos html

Como adiciono atributos data-* html usando TextboxFor?

Isso é o que eu tenho atualmente:

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

Como você vê, o - está causando um problema aqui data-url . Qual é o caminho em volta disso?

Você poderia usar sublinhado ( _ ) e o ajudante é inteligente o suficiente para fazer o resto:

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

E para aqueles que querem alcançar o mesmo em versões anteriores à ASP.NET MVC 3, eles poderiam:

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