显示日期时间字符串或空字符串的函数
我尝试创建一个视图助手,它接受 DateTime 对象并返回一个字符串。如果 DateTime 对象等于 new DateTime(0),则该函数返回空字符串。否则返回格式化的日期时间字符串。到目前为止这有效。
public static string DateTimeOrEmpty(this HtmlHelper htmlHelper, DateTime dateTime)
{
return dateTime.ToString().Equals(new DateTime(0).ToString())
? String.Empty
: dateTime.ToString("{0:g}");
}
问题是,我想将格式(“{0:g}”)作为参数传递:
public static string DateTimeOrEmpty(this HtmlHelper htmlHelper, DateTime dateTime, string format)
{
return dateTime.ToString().Equals(new DateTime(0).ToString())
? String.Empty
: dateTime.ToString(format);
}
但它无法正常工作。如果我从我的视图中调用
<%: Html.DateTimeOrEmpty(Model.StopDate, "{0:g}") %>
带有“{0:g}”作为“format”参数的函数,我会得到类似“{O:n.Chr.}”的内容,这不是我所期望的
I tried to create a view helper which takes a DateTime object and returns a string. If the DateTime object equals a new DateTime(0), the function returns an empty string. Otherwise return a formatted DateTime string. This works so far.
public static string DateTimeOrEmpty(this HtmlHelper htmlHelper, DateTime dateTime)
{
return dateTime.ToString().Equals(new DateTime(0).ToString())
? String.Empty
: dateTime.ToString("{0:g}");
}
The Problem is, that I'd like to pass the format ("{0:g}") as a parameter:
public static string DateTimeOrEmpty(this HtmlHelper htmlHelper, DateTime dateTime, string format)
{
return dateTime.ToString().Equals(new DateTime(0).ToString())
? String.Empty
: dateTime.ToString(format);
}
But it doesn't work properly. If I call the helper from my view
<%: Html.DateTimeOrEmpty(Model.StopDate, "{0:g}") %>
the function with "{0:g}" as parameter for "format", I get something like "{O:n. Chr.}", which is not what I expect
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
{0:}
部分用于格式化string.Format
参数 - 您只需要将“g”传递到 ToString() 中。但是,我建议您
IE
The
{0:}
part is for formattingstring.Format
parameters - you just want the "g" to pass into ToString().However, I'd recommend you
i.e.