public IActionResult GetTime([FromQuery] string timezoneId) { var timezone = TimeZoneInfo.FindSystemTimeZoneById(timezoneId); if (timezone == null) { timezone = TimeZoneInfo.Utc; } var utcTime = DateTime.UtcNow; var timezoneTime = TimeZoneInfo.ConvertTime(utcTime, TimeZoneInfo.Utc, timezone); var remoteIp = HttpContext.Connection.RemoteIpAddress.ToString(); var currentTimeDetail = new CurrentTimeQuery { UTCTime = utcTime, ClientIp = remoteIp, Time = timezoneTime, TimezoneId = timezone.Id, Timezone = timezone.DisplayName }; _context.CurrentTimeQueries.Add(currentTimeDetail); _context.SaveChanges(); return(Ok(currentTimeDetail)); }
public IActionResult Get() { var utcTime = DateTime.UtcNow; var serverTime = DateTime.Now; var ip = this.HttpContext.Connection.RemoteIpAddress.ToString(); var returnVal = new CurrentTimeQuery { UTCTime = utcTime, ClientIp = ip, Time = serverTime, SelectedTimeZone = TimeZoneInfo.Local.Id }; using (var db = new ClockworkContext()) { db.CurrentTimeQueries.Add(returnVal); var count = db.SaveChanges(); Console.WriteLine("{0} records saved to database", count); Console.WriteLine(); foreach (var CurrentTimeQuery in db.CurrentTimeQueries) { Console.WriteLine(" - {0}", CurrentTimeQuery.UTCTime); } } //return Ok(returnVal); return(Ok(TimeZoneService.GetTime(TimeZoneInfo.Local.Id).ToString())); }
public IActionResult GetZone(string zone) { var zoneTime = new DateTime(); var utcTime = DateTime.UtcNow; foreach (TimeZoneInfo z in TimeZoneInfo.GetSystemTimeZones()) { if (z.Id == zone) { zoneTime = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(utcTime, z.Id); } } var returnVal = new CurrentTimeQuery { UTCTime = DateTime.UtcNow, ClientIp = this.HttpContext.Connection.RemoteIpAddress.ToString(), Time = zoneTime, TimeZone = zone }; using (var db = new ClockworkContext()) { db.CurrentTimeQueries.Add(returnVal); db.SaveChanges(); } return(Ok(returnVal)); }
public IActionResult Get(string timeZoneId) { timeZoneId = HttpUtility.UrlDecode(timeZoneId); var utcTime = DateTime.UtcNow; var userTime = ConvertDateToTimeZone(utcTime, timeZoneId); var ip = this.HttpContext.Connection.RemoteIpAddress.ToString(); var returnVal = new CurrentTimeQuery { UTCTime = utcTime, ClientIp = ip, Time = userTime, TimeZone = timeZoneId }; using (var db = new ClockworkContext()) { db.CurrentTimeQueries.Add(returnVal); var count = db.SaveChanges(); Console.WriteLine("{0} records saved to database", count); Console.WriteLine(); foreach (var CurrentTimeQuery in db.CurrentTimeQueries) { Console.WriteLine(" - {0}", CurrentTimeQuery.UTCTime); } } return(Ok(returnVal)); }
public void ValidateTimeZones() { List <SelectListItem> testList = CurrentTimeQuery.GetTimeZones(); int result = testList.Count; Assert.AreEqual(593, result); Assert.AreEqual("--", testList[0].Text); }
public async Task <IActionResult> Get(string userTimezoneId) { TimeZoneInfo getTimeZoneId = TimeZoneInfo.FindSystemTimeZoneById(userTimezoneId); var utcTime = DateTime.UtcNow; var serverTime = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, getTimeZoneId); var ip = this.HttpContext.Connection.RemoteIpAddress.ToString(); int pageNo = 1; int pageSize = 10; //adding page to my data. Pagination <CurrentTimeQuery> paginationData; var returnVal = new CurrentTimeQuery { UTCTime = utcTime, ClientIp = ip, Time = serverTime }; using (var db = new ClockworkContext()) { db.CurrentTimeQueries.Add(returnVal); var count = db.SaveChanges(); Console.WriteLine("{0} records saved to database", count); Console.WriteLine(); foreach (var CurrentTimeQuery in db.CurrentTimeQueries) { Console.WriteLine(" - {0}", CurrentTimeQuery.UTCTime); } //default to desc so new entry can be easily see var data = db.CurrentTimeQueries.AsNoTracking().OrderByDescending(x => x.CurrentTimeQueryId); paginationData = await Pagination <CurrentTimeQuery> .CreateAsync(data, pageNo, pageSize); } return(Ok(new { currentData = returnVal , displayedData = paginationData , pageNumber = 1 , pageNext = paginationData.HasNextPage , pagePrev = paginationData.HasPreviousPage , totalPage = paginationData.TotalPages })); }
public IActionResult GetRequests() { CurrentTimeQuery[] returnVal = new CurrentTimeQuery[0]; // Get all of the entries in the database using (var db = new ClockworkContext()) { returnVal = db.CurrentTimeQueries.ToArray(); } // Send the entries back to the client return(Ok(returnVal)); }
public CurrentTimeQueryDto GetCurrentTime(GetCurrentTimeArgs args) { var serverTime = DateTime.Now; var query = new CurrentTimeQuery { ClientIp = args.ClientIp, Time = serverTime, TimeZoneId = args.TimeZoneId, UTCTime = serverTime.ToUniversalTime() }; return(_mapper.Map(_repository.Create(query))); }