我正在使用" yyyy-MM-dd"几次在日期格式代码中
例如:
var targetdate = Date.ToString("yyyy-MM-dd");
是否可以将格式声明为常量,以便可以避免一次又一次地使用代码
答案 0 :(得分:8)
使用扩展方法,不要再次声明任何格式,如下所示:
public static class DateExtension
{
public static string ToStandardString(this DateTime value)
{
return value.ToString(
"yyyy-MM-dd",
System.Globalization.CultureInfo.InvariantCulture);
}
}
所以你以这种方式使用它
var targetdate = Date.ToStandardString();
答案 1 :(得分:6)
将其用作
const string dateFormat = "yyyy-MM-dd";
//Use
var targetdate = Date.ToString(dateFormat);
OR
//for public scope
public static readonly string DateFormat = "yyyy-MM-dd";
//Use
var targetdate = Date.ToString(DateFormat);
//from outside the class, you have to use in this way
var targetdate = Date.ToString(ClassName.DateFormat);
答案 2 :(得分:2)
您可以执行的另一个选项是使用DateTimeFormatInfo
上的.ToString(...)
重载,而不是string
重载。
public static readonly System.Globalization.DateTimeFormatInfo MyDateTimeFormatInfo
= new System.Globalization.DateTimeFormatInfo()
{
ShortDatePattern = "yyyy-MM-dd",
LongTimePattern = "",
};
现在你可以做var targetdate = DateTime.Now.ToString(MyDateTimeFormatInfo);
这与使用字符串非常相似,但你可以更多地控制许多其他格式化属性。