Recentemente me surgiu uma dúvida e após alguns estudos cheguei a uma conclusão que estas duas “ferramentas” do MVC são bem diferentes apesar das igualdades.
TextBoxFor: Vai tornar como a entrada de texto do elemento HTML correspondente a expressão especificada. Simplificando, ele sempre irá processar como um tipo de dados independente do input do usuário. Sempre ele irá tratar como um input de texto simples
EditorFor: Este controle é pouco mais inteligente. Ele processa a marcação HTML com base no tipo de dados da propriedade. Por exemplo. suponha que exista uma propriedade booleana no modelo. Para tornar esta propriedade na vista como uma opção tanto podemos usar CheckBoxFor ou EditorFor. Ambos irão gerar a mesma marcação.
Qual é a vantagem de usar EditorFor?
Como sabemos, dependendo do tipo de dados da propriedade e gerada a marcação html correspondente. Então, suponha que amanhã se mudar o tipo de dados de propriedade no modelo, não há necessidade de mudar qualquer coisa na vista.O EditorFor irá mudar a marcação HTML automaticamente.