Как получить формат даты компьютера клиента? - PullRequest
0 голосов
/ 25 сентября 2019

Я хочу получить формат даты клиентского компьютера, мое приложение размещено на компьютере в США.

Формат даты хост-сервера: ММ / дд / гггг Локальный (клиентский) формат даты компьютера: дд / мм / гггг

Я хочу получить формат дд / мм / гггг, который является форматом клиентского компьютера.

Я использовал следующий код, но он возвращает формат даты сервера (ММ / дд / гггг), ноЯ хочу, чтобы формат даты компьютера-клиента (локальный).

DateTimeFormatInfo info = new DateTimeFormatInfo
{
    ShortDatePattern = CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern
};

Может кто-нибудь подсказать, как получить формат даты машины-клиента (дд / мм / гггг)?

Ответы [ 2 ]

0 голосов
/ 25 сентября 2019

В MVC asp.net:

Фрист положил Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(Request.UserLanguages.FirstOrDefault()); в Application_BeginRequest

, если у вас нет Application_BeginRequest.Пожалуйста, нажмите Global.asax в вашем проекте.

добавьте новую функцию в класс MvcApplication

protected void Application_BeginRequest() {

Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo(Request.UserLanguages.FirstOrDefault()); }

сейчас,Вы можете использовать формат DateTime.Now с клиентской машиной

0 голосов
/ 25 сентября 2019

Для получения даты в формате клиента.Я думаю, что java-скрипт будет лучшим вариантом

Попробуйте код ниже.Я надеюсь, что это поможет.

getDateFormat(){
    // initialize date value "31st January 2019"
    var my_date = new Date(2019,0,31);
    console.log(my_date.toLocaleDateString());
    // Initialize variables
    var separator="";
    var first="";
    var second="";
    var third="";
    var date_parts = [];

    // get separator : "-", "/" or " ", format based on toLocaleDateString function        
    if (my_date.toLocaleDateString().split("-").length==3){
        separator = " - ";
        date_parts = my_date.toLocaleDateString().split("-");
    } 
    if (my_date.toLocaleDateString().split("/").length == 3) {
        separator = " / ";
        date_parts = my_date.toLocaleDateString().split("/");
    } 
    if (my_date.toLocaleDateString().split(" ").length == 3) {
        separator = " ";
        date_parts = my_date.toLocaleDateString().split(" ");
    } 

    // get first part        
    if (date_parts[0]==2019){
        first ="yyyy";
    } else if (date_parts[0] == 31){
        first = "dd";
    } else{
        if (date_parts[0].length<=2){
            first ="mm";
        }
        else{
            first="mmm";
        }
    }

    // get second part        
    if (date_parts[1] == 2019) {
        second = "yyyy";
    } else if (date_parts[1] == 31) {
        second = "dd";
    } else {
        if (date_parts[1].length <= 2) {
            second = "mm";
        }
        else {
            second = "mmm";
        }
    }

    // get third part        
    if (date_parts[2] == 2019) {
        third = "yyyy";
    } else if (date_parts[2] == 31) {
        third = "dd";
    } else {
        if (date_parts[2].length <= 2) {
            third = "mm";
        }
        else {
            third = "mmm";
        }
    }

    // assembly
    var format = first + separator + second + separator + third;
    console.log(format);
    return format;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...