You are better off using the TextBoxFor method, since it allows you to change the identifier and class of an element directly, while EditorFor does not work if you have not created a custom editing state for it (using EditorTemplate).
@Html.TextBoxFor(model => model.ID, new { id = "ID" })
I believe that @Html.EditorFor(model => model.ID) set the name attribute, since it is mvc that depends on its binding to the model, so if this is not to your liking, you can use this name as a selector.
source share