Конвертировать дату в США в формат даты Великобритании C # - PullRequest
0 голосов
/ 06 ноября 2018

Все,

Я действительно новичок в C # после нескольких лет программирования на VBA. Я попытался преобразовать дату в США, которая передается в сценарий через параметр, в дату в Великобритании. (Извиняюсь, если это действительно основной вопрос - я все еще работаю над учебными материалами)

У меня проблема с передачей даты Великобритании в качестве параметра.

Код ниже:

using System.Globalization;

namespace Dynamic.Script_8D643DCA79B170B
{
// Please use caution when modifying class name, namespace or attributes
[OpenSpan.TypeManagement.DynamicTypeAttribute()]
[OpenSpan.Design.ComponentIdentityAttribute("Script-8D643DCA79B170B")]
public sealed class Program
    {
    public void Dateformat(Datetime USdate, Datetime UKdate)
        {
        string value = USdate;
        string format = "dd/MM/yyyy";
        DateTime result;
        if (DateTime.TryParseExact(value, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out result))
            {
            Console.WriteLine(result.ToString(format));
            }
        else
            {
            Console.WriteLine("Date invalid");
            }
        }
    }
}

По сути, я хотел бы передать в скрипт дату, отформатированную как MM / dd / YYYY, и преобразовать ее в британский формат даты dd / MM / YYYY в качестве переменной. Любая помощь и рекомендации по адаптации вышеуказанного сценария будут высоко оценены.

***** Edit **********

Спасибо за всю вашу помощь и советы, я смог разработать новый скрипт, см. Ниже:

    public string Dateformat(string USdate)
    {
        string date = USdate; // en-US formatted date
        // Convert to DateTime
        DateTime parsedDate = DateTime.ParseExact(date, "MM/dd/yyyy", CultureInfo.InvariantCulture);
        // Output in en-GB format

        return parsedDate.ToString("dd/MM/yyyy");
    }

Проблема, с которой я столкнулся в приведенном выше сценарии, заключается в том, что строка не была распознана как допустимый DateTime. Смотреть скриншот:

enter image description here

Дата US, которую я передаю в скрипт, отформатирована в DateTime.

...