ViewからControllerに渡したModelがnullってる

結論

モデルの変数に{get;set;}つけろ

概要

ASP.NET CoreでやるMVCパターンで

//Models
public class HomeModel{
  public string text;
}

//Controllers
public class HomeController : Controller{
  public IActionResult Index(HomeModel m){
    //m == null
  }
}
<!-- Index.cshtml -->
@model Models.HomeModel
<input asp-for="text"/>

な感じでHomeModelに{get;set;}がないと、cshtmlのinputからHomeControllerに値を渡してもnullになる
なんでやねん

public class HomeModel{
  public string text{get;set;}
}

でやると値が入るようになる
詳しいことはわからんがそういうことらしい