簡體   English   中英

在 ASP.Net MVC/Core 中支持多種日期格式

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM