ASP.NET Tutorial/Development/DateTime
Содержание
- 1 Assign DateTime value to asp:Label (C#)
- 2 Calculates the number of days until a given date
- 3 DateTime and TimeSpan
- 4 DateTime.Now.ToShortDateString()
- 5 Format DateTime
- 6 Format DateTime variable (C#)
- 7 Format DateTime variable (VB)
- 8 Set the asp:Label in code behind based on current time (VB.net)
- 9 Today.Ticks
Assign DateTime value to asp:Label (C#)
<%@Page Language="C#" %>
<script runat="server">
void Page_Load(Object Sender, EventArgs e) {
DateTime Now = DateTime.Now;
int intHour = Now.Hour;
Label1.Text = "The time is now " + Now.ToString("T") + "";
if (intHour < 12) {
Label1.Text +="Good morning!";
} else if (intHour > 12 & intHour < 18) {
Label1.Text +="Good afternoon!";
} else {
Label1.Text +="Good evening!";
}
}
</script>
<html><body>
<form runat="server">
<asp:Label id="Label1" runat="server"/>
</form>
</body></html>
Calculates the number of days until a given date
File: DaysUntilDates.asmx
<%@ WebService Language="C#" CodeBehind="~/App_Code/DaysUntilDates.cs" Class="DaysUntilDates" %>
File: \App_Code\DaysUntilDates.cs
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
[WebService(Namespace = "http://tempuri.ru/", Description="Calculates the number of days until a given date.")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class DaysUntilDates : System.Web.Services.WebService {
[WebMethod]
public int DaysUntil(DateTime date)
{
return DaysUntilDate(date.Month, date.Day);
}
[WebMethod]
public int DaysUntilHalloween()
{
return DaysUntilDate(10, 31);
}
[WebMethod]
public int DaysUntilChristmas()
{
return DaysUntilDate(12, 25);
}
private int DaysUntilDate(int month, int day)
{
DateTime targetDate;
targetDate = DateTime.Parse(month.ToString() + "/"
+ day.ToString() + "/"
+ DateTime.Today.Year);
if (DateTime.Today > targetDate)
{
targetDate = targetDate.AddYears(1);
}
TimeSpan timeUntil = targetDate - DateTime.Today;
return timeUntil.Days;
}
}
DateTime and TimeSpan
<%@ Page %>
<script language="C#" runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
DateTime startTime, endTime;
string output = "";
TimeSpan span;
startTime=DateTime.Now;
for (int i=1;i<10000;i++)
{
output += i.ToString() + " ";
}
endTime=DateTime.Now;
span=new TimeSpan(endTime.Ticks-startTime.Ticks);
Response.Write("<hr>Time Using Concatenation: " + span.TotalSeconds.ToString() + "<hr>");
startTime=DateTime.Now;
System.Text.StringBuilder sb = new System.Text.StringBuilder(10000);
for (int i=1;i<10000;i++)
{
sb.Append(i.ToString());
sb.Append(" ");
}
endTime=DateTime.Now;
span=new TimeSpan(endTime.Ticks-startTime.Ticks);
Response.Write("<hr>Time Using StringBuilder: " + span.TotalSeconds.ToString() + "<hr>");
}
</script>
DateTime.Now.ToShortDateString()
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
labDate.Text = DateTime.Now.ToShortDateString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Hello World Inline</title>
</head>
<body>
<form id="form1" runat="server">
<h1>Hello World</h1>
The date is <em><asp:Label ID="labDate" runat="server"></asp:Label></em>
</form>
</body>
</html>
Format DateTime
<%@ Page %>
<script language="C#" runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Label1.Text=DateTime.Now.ToString("hh:mm:ss");
System.Threading.Thread.Sleep(5000);
Label2.Text=DateTime.Now.ToString("hh:mm:ss");
}
</script>
<html>
<body>
<form id="form1" method="post" runat="server">
<asp:Label ID="Label1" Runat="server" /><br>
<asp:Label ID="Label2" Runat="server" />
</form>
</body>
</html>
Format DateTime variable (C#)
<%@ Page %>
<script language="C#" runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Write("Default: " + System.DateTime.Now + "<br>");
Response.Write("Local Time: " + System.DateTime.Now.ToLocalTime() + "<br>");
Response.Write("Long Date: " + System.DateTime.Now.ToLongDateString() + "<br>");
Response.Write("Long Time: " + System.DateTime.Now.ToLongTimeString() + "<br>");
Response.Write("Short Date: " + System.DateTime.Now.ToShortDateString() + "<br>");
Response.Write("Short Time: " + System.DateTime.Now.ToShortTimeString() + "<br>");
Response.Write("ToString Default: " + System.DateTime.Now.ToString() + "<br>");
Response.Write("Universal Time: " + System.DateTime.Now.ToUniversalTime() + "<br>"); // returns a datetime, which can still be formatted
Response.Write("d - Short Date: " + System.DateTime.Now.ToString("d") + "<br>");
Response.Write("D - Long Date: " + System.DateTime.Now.ToString("D") + "<br>");
Response.Write("t - Short Time: " + System.DateTime.Now.ToString("t") + "<br>");
Response.Write("T - Long Time: " + System.DateTime.Now.ToString("T") + "<br>");
Response.Write("f - Full date/time (short time): " + System.DateTime.Now.ToString("f") + "<br>");
Response.Write("F - Full date/time (long time): " + System.DateTime.Now.ToString("F") + "<br>");
Response.Write("g - General: " + System.DateTime.Now.ToString("g") + "<br>");
Response.Write("G - General: " + System.DateTime.Now.ToString("G") + "<br>");
Response.Write("M/m - Month day: " + System.DateTime.Now.ToString("M") + "<br>");
Response.Write("u - Universal Sortable: " + System.DateTime.Now.ToString("u") + "<br>");
Response.Write("Y/y - Year month: " + System.DateTime.Now.ToString("y") + "<br>");
Response.Write("d, day of month: " + System.DateTime.Now.ToString(" d") + "<br>"); // can"t use just "d"
Response.Write("dd, zero-padded day of month: " + System.DateTime.Now.ToString("dd") + "<br>");
Response.Write("ddd, abbreviated day of week: " + System.DateTime.Now.ToString("ddd") + "<br>");
Response.Write("dddd, full day of week: " + System.DateTime.Now.ToString("dddd") + "<br>");
Response.Write("h, hour: " + System.DateTime.Now.ToString(" h") + "<br>"); // can"t use just "h"
Response.Write("hh, hour, zero padded " + System.DateTime.Now.ToString("hh") + "<br>");
Response.Write("H, hour, 24-hr " + System.DateTime.Now.ToString(" H") + "<br>"); // can"t use just "H"
Response.Write("H, hour, 24-hr, zero padded " + System.DateTime.Now.ToString("HH") + "<br>");
Response.Write("m, minute: " + System.DateTime.Now.ToString(" m") + "<br>"); // can"t use just "m"
Response.Write("M, month: " + System.DateTime.Now.ToString(" M") + "<br>"); // can"t use just "M"
Response.Write("MM, month, zero padded: " + System.DateTime.Now.ToString("MM") + "<br>");
Response.Write("MMM, month abbreviated: " + System.DateTime.Now.ToString("MMM") + "<br>");
Response.Write("MMMM, month full name: " + System.DateTime.Now.ToString("MMMM") + "<br>");
Response.Write("y, year (omits century): " + System.DateTime.Now.ToString(" y") + "<br>"); // can"t use just "y"
Response.Write("yy, 2-digit year, zero padded: " + System.DateTime.Now.ToString("yy") + "<br>");
Response.Write("yyyy, 4-digit year, zero padded: " + System.DateTime.Now.ToString("yyyy") + "<br>");
}
</script>
Format DateTime variable (VB)
<%@ Page %>
<script Language="vb" runat="server">
Private Sub Page_Load(sender As Object, e As System.EventArgs)
Response.Write("Default: " & System.DateTime.Now & "<br>")
Response.Write("Local Time: " & System.DateTime.Now.ToLocalTime() & "<br>")
Response.Write("Long Date: " & System.DateTime.Now.ToLongDateString() & "<br>")
Response.Write("Long Time: " & System.DateTime.Now.ToLongTimeString() & "<br>")
Response.Write("Short Date: " & System.DateTime.Now.ToShortDateString() & "<br>")
Response.Write("Short Time: " & System.DateTime.Now.ToShortTimeString() & "<br>")
Response.Write("ToString Default: " & System.DateTime.Now.ToString() & "<br>")
Response.Write("Universal Time: " & System.DateTime.Now.ToUniversalTime() & "<br>") " returns a datetime, which can still be formatted
" Using Format Strings
Response.Write("d - Short Date: " & System.DateTime.Now.ToString("d") & "<br>")
Response.Write("D - Long Date: " & System.DateTime.Now.ToString("D") & "<br>")
Response.Write("t - Short Time: " & System.DateTime.Now.ToString("t") & "<br>")
Response.Write("T - Long Time: " & System.DateTime.Now.ToString("T") & "<br>")
Response.Write("f - Full date/time (short time): " & System.DateTime.Now.ToString("f") & "<br>")
Response.Write("F - Full date/time (long time): " & System.DateTime.Now.ToString("F") & "<br>")
Response.Write("g - General: " & System.DateTime.Now.ToString("g") & "<br>")
Response.Write("G - General: " & System.DateTime.Now.ToString("G") & "<br>")
Response.Write("M/m - Month day: " & System.DateTime.Now.ToString("M") & "<br>")
Response.Write("u - Universal Sortable: " & System.DateTime.Now.ToString("u") & "<br>")
Response.Write("Y/y - Year month: " & System.DateTime.Now.ToString("y") & "<br>")
" Custom Format Strings
Response.Write("d, day of month: " & System.DateTime.Now.ToString(" d") & "<br>") " can"t use just "d"
Response.Write("dd, zero-padded day of month: " & System.DateTime.Now.ToString("dd") & "<br>")
Response.Write("ddd, abbreviated day of week: " & System.DateTime.Now.ToString("ddd") & "<br>")
Response.Write("dddd, full day of week: " & System.DateTime.Now.ToString("dddd") & "<br>")
Response.Write("h, hour: " & System.DateTime.Now.ToString(" h") & "<br>") " can"t use just "h"
Response.Write("hh, hour, zero padded " & System.DateTime.Now.ToString("hh") & "<br>")
Response.Write("H, hour, 24-hr " & System.DateTime.Now.ToString(" H") & "<br>") " can"t use just "H"
Response.Write("H, hour, 24-hr, zero padded " & System.DateTime.Now.ToString("HH") & "<br>")
Response.Write("m, minute: " & System.DateTime.Now.ToString(" m") & "<br>") " can"t use just "m"
Response.Write("M, month: " & System.DateTime.Now.ToString(" M") & "<br>") " can"t use just "M"
Response.Write("MM, month, zero padded: " & System.DateTime.Now.ToString("MM") & "<br>")
Response.Write("MMM, month abbreviated: " & System.DateTime.Now.ToString("MMM") & "<br>")
Response.Write("MMMM, month full name: " & System.DateTime.Now.ToString("MMMM") & "<br>")
Response.Write("y, year (omits century): " & System.DateTime.Now.ToString(" y") & "<br>") " can"t use just "y"
Response.Write("yy, 2-digit year, zero padded: " & System.DateTime.Now.ToString("yy") & "<br>")
Response.Write("yyyy, 4-digit year, zero padded: " & System.DateTime.Now.ToString("yyyy") & "<br>")
End Sub "Page_Load
</script>
Set the asp:Label in code behind based on current time (VB.net)
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="MyPage" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="lblMessage" runat="server"></asp:Label></div>
</form>
</body>
</html>
File: Default.aspx.vb
Partial Class MyPage
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If DateTime.Now.Hour >= 6 And DateTime.Now.Hour < 12 Then
lblMessage.Text = "Good morning."
End If
If DateTime.Now.Hour >= 12 And DateTime.Now.Hour <= 17 Then
lblMessage.Text = "Good afternoon."
End If
If DateTime.Now.Hour > 17 Or DateTime.Now.Hour < 6 Then
lblMessage.Text = "Good evening."
End If
End Sub
End Class
Today.Ticks
<%@ Page %>
<script language="vb" runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
Dim ticks As Long
ticks=DateTime.Now.Ticks-DateTime.Today.Ticks
Dim ts As New TimeSpan(ticks)
Hours.Text=ts.Hours.ToString()
Minutes.Text=ts.Minutes.ToString()
Seconds.Text=ts.Seconds.ToString()
End Sub
</script>
<html>
<body>
<form id="form1" method="post" runat="server">
Since the start of the day
<asp:Label ID="Hours" Runat="server" />
hours,
<asp:Label ID="Minutes" Runat="server" />
minutes and
<asp:Label ID="Seconds" Runat="server" />
seconds have passed.
</form>
</body>
</html>