[英]How to convert milliseconds to DateTime in ASP.NET MVC controller parameter
[英]Convert a client datetime to server datetime in ASP.NET MVC
我有一個簡單的模型,例如:
[MyRequired(Error = "Invalid date time")]
public DateTime LastUpdate
{
get;set;
}
...
和MyRequiredAttribute
類:
public class MyRequiredAttribute: RequiredAttribute {
public override IsValid(object value) {
//value get from request is `01/01/0001 00:00:00 ...`
DateTime parsedTime = DateTime.Parse(value.ToString());
// here throws exception
}
}
在JavaScript方面,我使用Datepicker
插件
<input type="text" id="LastUpdate" name="LastUpdate" class="datepicker" value="<%=DateTime.Now.ToString( "dd-MM-yyyy" )%>" />
和
$(".datepicker").datepicker({ dateFormat: 'dd-mm-yy' });
每次,我都從請求01/01/0001
接收值,並拋出一個格式不正確的錯誤。
如何將dd-MM-yyyy
格式轉換為MM/dd/yyyy
格式? 也許MVC僅接受MM/dd/yyyy
格式。
在您的模型中使用以下方式
public string LastUpdate
{
get;set;
}
現在在您的控制器中如果它處於編輯模式,則按以下方式綁定:
Model.LastUpdate = FetchDateFromServer.ToString("dd-MM-yyyy")
otherwise
Model.LastUpdate = DateTime.UtcNow.ToString("dd-MM-yyyy")
現在從您的“視圖”中刪除輸入type =“ text”的值,如果它是強類型的
<input type="text" id="LastUpdate" name="LastUpdate" class="datepicker" />
我希望它能在我的項目中正常工作
我想你應該寫
$("#dates").datepicker("option", "dateFormat", "dd-mm-yy"); // it will give format dd-mm-yy
要么
$("#dates").datepicker("option", "dateFormat", "mm-dd-yy"); // it will give format mm-dd-yy
插入
$(".datepicker").datepicker({ dateFormat: 'dd-mm-yy' });
或在服務器端,您可以執行以下操作
const string dateformate = "dd/MM/yyyy";
var reachDate = DateTime.ParseExact(dates, dateformate, CultureInfo.InvariantCulture);
這會將任何日期轉換為dd / MM / yyyy格式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.