Por que obtenho nulo em vez de string vazia ao receber solicitação POST no Razor View?

Eu costumava receber uma string vazia quando não havia valor:

[HttpPost]
public ActionResult Add(string text)
{
    // text is "" when there's no value provided by user
}

Mas agora estou passando um modelo

[HttpPost]
public ActionResult Add(SomeModel Model)
{
    // model.Text is null when there's no value provided by user
}

Então eu tenho que usar o?? "" operador.

Por que isso está acontecendo?

questionAnswers(3)

yourAnswerToTheQuestion