开发者

Expression edit

开发者 https://www.devze.com 2023-03-13 16:19 出处:网络
i am working on a report in asp.net, mvc/c# and in my report i want to display the date without the time so instead of

i am working on a report in asp.net, mvc/c# and in my report i want to display the date without the time so instead of

12/3/2011 00:00:00 ------ to ------ 12/3/2011

and i am using this expression for my text box that is displaying the date:

=FormatDateTime(Fields!DateClosed.Value)

and for an item with a date it does show properly without the time - but for other items in the list which do not have dat开发者_如何学运维e they display the time like so: 12:00:00 AM

How can i fix the expression so that it will only show the date only when there is a date to display and not show the time when a date is not available.


How about:

=(DateClosed==null) ? FormatDateTime(DateClosed) : string.Empty;

Also, you might use

=(DateClosed==null) ? DateClosed.Value.ToString("mm dd yyyy") : string.Empty;

instead of calling a separate FormatDateTime() function (unless, of course, you need to centralize date formatting, but that could be handled by storing the format in web.config).

Or even

string FormatDateTime(DateTime? date)
{
    var result = date==null ? date.ToString("mm dd yyyy") : string.Empty;
}

if you don't want to put the ternary conditional in the markup.


so i played around with this and i used a different format expression which lucky enough worked well. Thanks for everyone how helped.

=Format(Fields!DateClosed.Value, "d")


Check if the date is null and if it is then set string.Empty

0

精彩评论

暂无评论...
验证码 换一张
取 消