我需要我的用戶輸入秒作為輸入,但在用戶輸入后我想將秒轉換為分鐘并在標簽中顯示給用戶。我在這里想念什么?
看法
@Html.BSMaterialTextBoxFor(model => model.seconds, "Enter the seconds",colCSS: "col-6", htmlAttributes: new { data_bindrop = "seconds" , autocomplete = "off" })
@Html.LabelFor(model => model.secondsStr)
視圖模型
public int seconds{ get; set; }
[Display(Name = "Time")]
public string secondsStr
{
get
{
return (seconds/ 60).ToString() " Minutes" " " (seconds% 60).ToString() "Seconds";
}
}

在 time 旁邊,應該寫 0 分 45 秒
uj5u.com熱心網友回復:
還有更簡單的方法來處理您想要實作的目標。我希望這是您正在尋找的:
請按照以下步驟操作:
Model:
public class SecondModel
{
public double Seconds { get; set; }
}
Controller For Display:
public IActionResult Index()
{
ViewBag.Minutes = TempData["Minutes"];
return View();
}
Controller When Submit:
[HttpPost]
public async Task<IActionResult> AddSecond(SecondModel second)
{
TimeSpan t = TimeSpan.FromSeconds(second.Seconds);
string convertedMinutes = string.Format("{0:D2}m:{1:D2}s", t.Minutes, t.Seconds);
TempData["Minutes"] = convertedMinutes;
return RedirectToAction("Index");
}
Note:指向rememebrC#或者asp.net core有一個內置的方法可以做到這一點。我只是TimeSpan.FromSeconds用來實作它。
View:
@model DotNet6MVCWebApp.Models.SecondModel
<div class="row">
<div class="form-group">
<form class="form-group" method="post" asp-controller="Second" asp-action="AddSecond">
<table style="border-spacing: 12px;">
<tr>
<td><strong>Enter Seconds</strong></td>
<td><input asp-for="Seconds" class="form-control" /></td>
<td><button type="submit" class="btn btn-primary">Convert Second In Minutes</button></td>
<td>You have Entered-<strong>@ViewBag.Minutes</strong></td>
</tr>
</table>
</form>
</div>
</div>
Output:

轉載請註明出處,本文鏈接:https://www.uj5u.com/net/465584.html
標籤:C# asp.net-mvc asp.net 核心

