[英]Supporting Multiple Date Formats in ASP.Net MVC/Core
我在開發一個應用程序,它只支持兩種格式 - MM/dd/yyyy(en-US)文化和 dd/MM/yyyy(en-GB)文化。 現在我們支持 10 多種格式和文化。
當具有不同日期格式的客戶使用您的應用程序時,處理多種日期格式的最佳方法是什么? 小提琴鏈接 - https://dotnetfiddle.net/5zauRz
我認為你不應該擔心文化。 專注於日期格式。
沒有特定的函數可以將任何string
解析為DateTime
對象。 所以你必須手動處理它。
我的建議是將所有可能的日期格式保留為一個數組,並嘗試將您的日期解析為每種格式。
Delcare你的陣列:
public static string[] dateFormats = {"MM/dd/yyyy","dd/MM/yyyy","MM-dd-yyyy","dd-MM-yyyy","MM.dd.yyyy","dd.MM.yyyy","dd-MMM-yy"};
然后嘗試以這種方式解析
foreach (string DateFormat in dateFormats){
try{
formattedDate = DateTime.ParseExact(dateValue,DateFormat, invariantCulture);
break;
}
catch(Exception){
continue;
}
}
我已經更改了您的代碼,請檢查一下
小提琴鏈接:-https: //dotnetfiddle.net/7SGoZ2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.