Utc vs local Time 【下】:SpecifyKind ToUniversalTime ToLocalTime


1.代码:

using System;
using System.Web.Mvc;

namespace CloudCodeTest.Controllers
{
    public class TimeTestController : Controller
    {
        // GET: TimeTest
        public ActionResult Index()
        {
            DateTime utcTime = DateTime.UtcNow;
            DateTime localTime = DateTime.Now;
            DateTime specifyUtc = DateTime.SpecifyKind(localTime, DateTimeKind.Utc);
            var localToUtc = localTime.ToUniversalTime();
            var utcToLocal = utcTime.ToLocalTime();
            // return View(utcTime);//好像不能直接这么写,需要建立一个Model,如下:
            var model = new DateTimeTestModel
            {
                utcTime = utcTime,
                localTime = localTime,
                specifyUtc = specifyUtc,
                utcTimeKind = utcTime.Kind,
                localTimeKind = localTime.Kind,
                specifyUtcKind = specifyUtc.Kind,
                localToUtc = localToUtc,
                localToUtcKind = localToUtc.Kind,
                utcToLocal = utcToLocal,
                utcToLocalKind = utcToLocal.Kind
            };
            return View(model);

        }
    }

    public class DateTimeTestModel
    {
        public DateTime utcTime { get; set; }
        public DateTime localTime { get; set; }
        public DateTime specifyUtc { get; set; }

        public DateTimeKind utcTimeKind { get; set; }
        public DateTimeKind localTimeKind { get; set; }
        public DateTimeKind specifyUtcKind { get; set; }
        public DateTime localToUtc { get; set; }
        public DateTimeKind localToUtcKind { get; set; }
        public DateTime utcToLocal { get; set; }
        public DateTimeKind utcToLocalKind { get; set; }
    }
}

2.前端:

@{
    ViewBag.Title = "Index";
}

Index

UTC 时间为: @Model.utcTime   Kind:@Model.utcTimeKind
本地时间为:@Model.localTime   Kind:@Model.localTimeKind
SpecifyUtcKind的时间为:@Model.specifyUtc   Kind:@Model.specifyUtcKind
UTC 时间转为本地时间: @Model.utcToLocal   Kind:@Model.utcToLocalKind
本地时间转为UTC时间:@Model.localToUtc   Kind:@Model.localToUtcKind

3.测试结果

C