全部
经过多年的VBA编程,我真的对C#陌生。我已经尝试尝试将通过参数传递给脚本的美国日期转换为英国日期。 (很抱歉,这是一个非常基本的问题-我仍在研究培训材料)
我遇到的问题是将英国日期作为参数传递出去。
以下代码:
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作为变量。任何有关如何适应上述脚本的帮助和指导将不胜感激。
*****编辑**********
到目前为止,感谢您的所有帮助和建议,我已经能够开发一个新的脚本,如下所示:
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。查看屏幕截图:
我要传递给脚本的USdate格式为DateTime。