Alv*_*zon 7 c# asp.net-core-mvc asp.net-core
关于使用模型将日期时间转换为日期,我遇到了问题.
类库中的模型
public partial class LoanContract
{
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}")]
public DateTime LoanDateStart { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
项目模型
public class ModelLoan
{
public LoanContract loanContract { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
控制器代码
myList.loanContract = new LoanContract { LoanDateStart = DateTime.Today };
Run Code Online (Sandbox Code Playgroud)
视图:
<input disabled type="date" asp-for="loanContract.LoanDateStart" id="dpDateNow" class="form-control" />
Run Code Online (Sandbox Code Playgroud)
它显示如下:yyyy-MM-dd我想要实现的是我想要改变它MM/dd/yyyy.我尝试使用,.ToString("MM/dd/yyyy")但它不起作用.
在您的模型中尝试使用它:
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:MM/dd/yyyy}")]
Run Code Online (Sandbox Code Playgroud)
并在您的控制器中将DateTime更改为Date:
myList.loanContract = new LoanContract { LoanDateStart = Date.Today };
Run Code Online (Sandbox Code Playgroud)
希望这对你有所帮助.
小智 6
如果在模型中定义不起作用,您可以在视图文件中使用:
@String.Format("{0:dd/MM/yyyy}",ViewBag.TerminoDaAvaliacao)
Run Code Online (Sandbox Code Playgroud)
此 ViewBag 包含一个 DateTime 值。时间随着这种格式定义而消失。没有必要在模型文件定义中按日期更改日期时间。
简单实用,使用asp-format,例子:
<input asp-for="MyDate" asp-format="{0:dd/MM/yyyy}" class="form-control" />
Run Code Online (Sandbox Code Playgroud)
或者:
@Html.TextBoxFor(model => model.MyDate, "{0:dd/MM/yyyy}", new { @class = "form-control" })
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26381 次 |
| 最近记录: |