DateTime이 서버에 올라갈 때가 이해가 되지 않습니다.

고객님의 문의에 답변하는 직원은 고객 여러분의 가족 중 한 사람일 수 있습니다.
고객의 언어폭력(비하, 조롱, 욕설, 협박, 성희롱 등)으로부터 직원을 보호하기 위해
관련 법에 따라 수사기관에 필요한 조치를 요구할 수 있으며, 형법에 의해 처벌 대상이 될 수 있습니다.

커뮤니티 이용 정책에 위배되는 게시물을 작성할 경우, 별도 안내 없이 게시물 삭제 또는 커뮤니티 이용이 제한될 수 있습니다.

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 뒤끝 SDK 버전 : 5.11

  • 프로젝트명 : Park BongPal

  • 스테이터스 코드 :

  • 에러 코드 :

  • 에러 메시지 :
    안녕하세요. DB에 DateTime을 저장하는 부분에서 이해가 되지 않는 부분이 생겨 문의 남깁니다.

      string serverTime = Backend.Utils.GetServerTime().GetReturnValuetoJSON()["utcTime"].ToString();
      DateTime startTime = DateTime.Parse(serverTime);
    
      Param param = new()
      {
          { nameof(MineBuildData.mineIndex), mineIndex },
          { nameof(MineBuildData.buildStartTime), startTime },
          { nameof(MineBuildData.buildCompleted), false }
      };
    
      SendQueue.Enqueue(Backend.GameData.Insert, nameof(MineBuildData), param, callback =>
    

현재 위와 같은 코드로 DB에 DateTime을 저장하고 있는데, 2023-09-18 01:37:51 와 같은 형식으로 저장이 됩니다.

그런데 문제는 이 정보를 다시 받아와서 DateTime.Parse를 하게 되면, KTC가 아닌 저 형식 그대로 로드가 되는 문제가 있습니다.

하지만 다른 코드인

        serverTime = DateTime.Parse(Backend.Utils.GetServerTime ().GetReturnValuetoJSON()["utcTime"].ToString());
        Param param = new() { { "lastLogin", serverTime }};

        SendQueue.Enqueue(Backend.GameData.UpdateV2, nameof(UserData), UserData.inDate, Backend.UserInDate, param, ( callback ) => 

의 경우에는 2023-09-16T12:50:21.093+09:00 와 같은 형식으로 저장이 되고 있습니다.

제 눈에는 두 코드의 동작 방식에는 차이가 없는 것처럼 보이는데 왜 이런 결과가 생기는 지를 잘 모르겠습니다.

안녕하세요 개발자님,
서버는 해당 데이터의 자료형 정보를 알지 못하며 DateTime.ToString()과 시간 표현 방식이 다르기 떄문에 일반적인 시간 그대로 보낼 경우, 시간의 형태가 변화하게 됩니다.

startTime.ToString(“yyyy-MM-ddTHH:mm:ss.fffZ”) 과 같이 명시 하여 보내는 것을 추천드립니다.