2016-01-29 2 views
0

У меня есть веб-сервис с веб-api в C#.Как анализировать DateTime в методе веб-службы

Я создал метод для извлечения некоторой записи из базы данных. Один столбец, это дата и время. Я хочу его форматировать.

Так что у меня этот метод для извлечения записей из базы данных:

[NonAction] 
private IQueryable<WSOmniacare.Models.AAHome.ImmaginiSecSoc.ImmaginiSecSocDTO> getSecSocImages(int? id) 
{ 
    var strItem = from u in db_data.CAMERA_SEC_SOC 
      where u.ID == id 
      select u.Image; 

    String imageBas64 = GetString(strItem.First()); 

    if (id != null) 
    { 
    return from u in db_data.CAMERA_SEC_SOC 
      where u.ID == id 
      select new WSOmniacare.Models.AAHome.ImmaginiSecSoc.ImmaginiSecSocDTO() 
      { 
      image = imageBas64, 
      image_width = u.image_width, 
      image_height= u.image_height, 
      type = u.type, 
      timestamp =u.timestamp.ToString(), 
      dateTime = u.timestamp, 
      rectangle = new WSOmniacare.Models.AAHome.ImmaginiSecSoc.ImmaginiSecSocDTO.Rectangle() 
      { 
      rects = from pi in db_data.CAMERA_SEC_SOC_Rectangles 
       where pi.ID_SecSoc == id 
       select new WSOmniacare.Models.AAHome.ImmaginiSecSoc.ImmaginiSecSocDTO.Rectangle.Rect() 
       { 
       height= pi.height, 
       width = pi.width, 
       x = pi.x, 
       y=pi.y 
       } 
      } 
      }; 
    } 
    return null; 
} 

Это метод, чтобы создать ответ:

public HttpResponseMessage getSecSocData(int? id = null) 
{ 
    try 
    { 
    IQueryable<ImmaginiSecSoc.ImmaginiSecSocDTO> lista = getSecSocImages(id); 
    List<ImmaginiSecSoc.ImmaginiSecSocDTO> listaModificata = new List<ImmaginiSecSoc.ImmaginiSecSocDTO>(); 
    foreach (ImmaginiSecSoc.ImmaginiSecSocDTO a in lista) 
    { 
     a.timestamp = a.dateTime.ToString("MM/dd/yyyy HH:mm:ss.fff"); 
     listaModificata.Add(a); 
    } 
    return Request.CreateResponse(HttpStatusCode.OK, new RCamera((short)status_code.Success, "Ok", listaModificata)); 
    } 
    catch (Exception e) 
    { 
    e = e.GetBaseException(); 
    log.Error(string.Format("{0} {1}", e.Message, e.StackTrace)); 
    return Request.CreateResponse(HttpStatusCode.InternalServerError, new RMessage((short)status_code.Exception, HttpStatusCode.InternalServerError.ToString())); 
    } 
} 

Как вы можете видеть, я должен цикл список и форматирование временной метки поля. Теперь мой вопрос: как я могу изменить код o разбора JSON для форматирования моей даты?

ответ

0

Вы уже делаете

timestamp =u.timestamp.ToString(), 

getSecSocImages в методе

Если формат всегда то же самое, изменить его

timestamp =u.timestamp.ToString("MM/dd/yyyy HH:mm:ss.fff"), 
+0

Я просто использовать этот код, но не работает, потому что метод toString не поддерживается из Entity Framework – bircastri

Смежные вопросы