DataType vs UiHint

Estou usando o mvc2 há algum tempo e, quando preciso definir o modelo, uso o Atributo DataType

    [DataType("DropDown")]
    public int Field { get; set; }

Vejo outras pessoas usando o UiHint para obter os mesmos resultados

    [UiHint("DropDown")]
    public int Field { get; set; }

Qual é a diferença entre usar esses dois atributos? Qual atributo devo usar normalmente ou eles são para tarefas diferentes?

questionAnswers(2)

yourAnswerToTheQuestion