在asp.net core mvc中,采用model传递非字段本身数据类型的值

1.在asp.net core mvc中,采用model传值
2.由于字段Alarmstate为int类型(Stop:0,ON:1,OFF:2),当表单提交到后台,该字段为null
3.怎样将选中的Button值value,转换后以model字段的形式传递到后台接收呢?

<div class="btn-group">
   <input  asp-for="Alarmstate" value="Stop" type="button" class="btn btn-outline-success" onclick="SetState(this)"/>
   <input  asp-for="Alarmstate" value="ON" type="button" class="btn btn-outline-success active" onclick="SetState(this)"/>
   <input  asp-for="Alarmstate" value="OFF" type="button" class="btn btn-outline-success" onclick="SetState(this)"/>
</div>
<div class="btn-group">
   <input id="btnStop" value="Stop" type="button" class="btn btn-outline-success" onclick="SetState('Stop')"/>
   <input id="btnOn" value="ON" type="button" class="btn btn-outline-success active" onclick="SetState('ON')"/>
   <input id="btnOff" value="OFF" type="button" class="btn btn-outline-success" onclick="SetState('OFF')"/>
</div>

@model YourModel
<form method="post" action="/YourController/YourAction">
   @Html.HiddenFor(m => m.Alarmstate)
   <button type="submit">Submit</button>
</form>

<script>
   function SetState(state) {
      var alarmStateInput = document.getElementById("Alarmstate");
      if (state === "Stop") {
         alarmStateInput.value = 0;
      } else if (state === "ON") {
         alarmStateInput.value = 1;
      } else if (state === "OFF") {
         alarmStateInput.value = 2;
      }
   }
</script>