Solved

Duration in days, hours, minutes and seconds

Posted on 2006-07-09
5
1,433 Views
Last Modified: 2012-06-21
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
Comment
Question by:claracruz
5 Comments
 
LVL 14

Accepted Solution

by:
Ramuncikas earned 500 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

by:SpreadTheWord
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

by:NEL_BusOps
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

by:Kh3ldar
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

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

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

A quick way to get a menu to work on our website, is using the Menu control and assign it to a web.sitemap using SiteMapDataSource. Example of web.sitemap file: (CODE) Sample code to add to the page menu: (CODE) Running the application, we wi…
Problem Hi all,    While many today have fast Internet connection, there are many still who do not, or are connecting through devices with a slower connect, so light web pages and fast load times are still popular.    If your ASP.NET page …
Many functions in Excel can make decisions. The most simple of these is the IF function: it returns a value depending on whether a condition you describe is true or false. Once you get the hang of using the IF function, you will find it easier to us…
Both in life and business – not all partnerships are created equal. As the demand for cloud services increases, so do the number of self-proclaimed cloud partners. Asking the right questions up front in the partnership, will enable both parties …

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

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

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now