[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
Solved

# Duration in days, hours, minutes and seconds

Posted on 2006-07-09
Medium Priority
1,489 Views
Hello Experts,

how would I change this;-
result.Days.ToString()

to give me the result iin days, hours, minutes and seconds.

Also, how would I go about setting this duration to a countdown timer.
0
Question by:claracruz

LVL 14

Accepted Solution

Ramuncikas earned 2000 total points
ID: 17067502
result.Days & " days " & result.Hours & " hours " & result.Minutes & " minutes " & result.Seconds & " seconds"

Could you please explain more about what you want to achieve with countdown timer.
0

Expert Comment

ID: 17070891
I think the question needs some more explaination - but maybe look at System.TimeSpan
http://msdn2.microsoft.com/en-us/library/system.timespan.aspx
0

LVL 1

Expert Comment

ID: 17072247
The first response won't work as it will give you a total of the time difference in each of the specified units. I take it the result needs to be broken down into the maximum amount of days then the remainder used to calculate hours etc.

Below is a ASP function I once made which could be easily converted to .NET, I've not had need to do this in ASP.NET so am not aware if there is a new feature that would accomodate your needs better. Here is a link I have used to adapt a javascript count down timer in the past, should set you on the right track. http://www.hashemian.com/tools/javascript-countdown.htm.

function timeDifference(date1,date2)
'-- Calculates the difference in minutes, hours, days, weeks and years
'-- between two dates.

if isDate(date1) AND isDate(date2) then
tUnit = dateDiff("s",date1,date2)

'--      Divide seconds into minutes
tSecond = tUnit / 60
'       --      Discard remainder and assign as minute
tMinute = fix(tSecond)
'       -- Retreive decimal remainder and convert to seconds
tSecond = round((tSecond - tMinute)*60)

'--      Divide minutes into hours
tMinute = tMinute / 60
tHour = fix(tMinute)
tMinute = round((tMinute - tHour)*60)

'-- Divide hours into days
tHour = tHour/24
tDay = fix(tHour)
tHour = round((tHour-tDay)*24)
'-- Divide days into weeks
tDay = tDay/7
tWeek = fix(tDay)
tDay = round((tDay-tWeek)*7)
'-- Divide weeks into years
tWeek = tWeek/52
tYear = fix(tWeek)
tWeek = round((tWeek-tYear)*52)

if tYear<>0 then
tWrite=tWrite&", "&tYear&" Year"
if tYear>1 then tWrite=tWrite&"s"
end if
if tWeek<>0 then
tWrite=tWrite&", "&tWeek&" Week"
if tWeek>1 then tWrite=tWrite&"s"
end if
if tDay<>0 then
tWrite=tWrite&", "&tDay&" Day"
if tDay>1 then tWrite=tWrite&"s"
end if
if tHour<>0 then
tWrite=tWrite&", "&tHour&" Hour"
if tHour>1 then tWrite=tWrite&"s"
end if
if tMinute<>0 then
tWrite=tWrite&", "&tMinute&" Minute"
if tMinute>1 then tWrite=tWrite&"s"
end if
if tSecond<>0 AND tHour=0 AND tDay=0 AND tWeek=0 AND tYear=0 then
tWrite=tWrite&", "&tSecond&" Second"
if tSecond>1 then tWrite=tWrite&"s"
end if

if tWrite <> "" then
timeDifference = right(tWrite,len(tWrite)-2)
end if
end if

end function
0

LVL 4

Expert Comment

ID: 17073080
If result is a TimeSpan

.Days, .Hours, .Minutes and .Seconds represent the partials

(note that .TotalDays, .TotalHours, .TotalMinutes and .TotalSeconds represent the whole timespan expressed by these demoninations)

If result is a DateTime

result.ToString("d hh mm ss") will return the values as requested.

Stephen
0

LVL 4

Author Comment

ID: 17074961
how about when binding data to a control like so-  <%# Eval("STARTTIME")%>
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In .NET 2.0, Microsoft introduced the Web Site.  This was the default way to create a web Project in Visual Studio 2005.  In Visual Studio 2008, the Web Application has been restored as the default web Project in Visual Studio/.NET 3.x The Web Si…
IntroductionWhile developing web applications, a single page might contain many regions and each region might contain many number of controls with the capability to perform  postback. Many times you might need to perform some action on an ASP.NET po…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an anti-spam), the admin…
With just a little bit of  SQL and VBA, many doors open to cool things like synchronize a list box to display data relevant to other information on a form.  If you have never written code or looked at an SQL statement before, no problem! ...  give i…
###### Suggested Courses
Course of the Month18 days, 18 hours left to enroll

#### 834 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.