2010-12-17 6 views
1

코드 숨김 :
나는 DateTime.ToUniversalTime()으로 SQL Server에 내 날짜를 저장합니다.
그런 다음 날짜를 읽고 웹 페이지에 표시하기 전에 DateTime.ToLocalTime()으로 다시 변환하십시오.ASP.NET에서 어떻게 GMT로 변환해야합니까?

내 웹 서버가 클라이언트와 완전히 다른 시간대에있을 때 작동하지 않습니다. 내 모든 변환은 웹 서버에서 일어나고 있습니다. 코드 숨김에서 이것을 시도해 본 결과 클라이언트에서해야한다고 생각합니다.

브라우저의 실제 현지 시간이 GMT와 GMT간에 올바르게 변환되도록하는 방법은 무엇입니까?

답변

1

하나의 옵션은 사용자에게 일반적인 프로필 정보에서 시간대를 묻고 서버에서 사용하는 것입니다.

+0

한 가장 간단한 솔루션은 종종 가장 –

+0

감사합니다. 나는 두 개의 시간대에 대해서만 걱정할 뿐이다. 그래서 이것은 내가 택한 옵션이다. 콘솔 응용 프로그램을 만들어 사용 가능한 모든 키를 나열하여 키를 얻었습니다. – Blanthor

0

대부분의 구현 현지 시간이 필요한 사용자가 자신의 시간대를 지정해야하는 경우를 보았습니다.이 시간대는 서버의 프로필에 저장되고 제시된 날짜/시간을 조정하는 데 사용됩니다. 이것은 가장 강력한 방법 인 것처럼 보일 것입니다. 다른 방법으로는 IP 주소 (GeoIP 또는 유사)를 사용하여 사용자 위치를 설정하고 그에 따라 조정하는 것입니다. 일부 회사는 사용자와 함께 지리적으로 위치하지 않는 게이트웨이가 있기 때문에 전적으로 신뢰할 수있는 것은 아닙니다.

1

사용자가 정한 서버 시간대 (예 : "12:00 pm 중부 표준시"라고 말함)로 시간을 표시하거나 사용자가 프로필에 시간대를 제공하도록 할 수없는 경우에는 javascript를 사용하여 시간을 변환하십시오. 나는 모든 단계를 통해 가고 싶지 않지만,이 페이지는이 일의 좋은 연습이 있습니다 사용자의 로컬 시간을 보여주는 선호하는 방법은 그들에게 제공해야 할 것이라고

https://web.archive.org/web/1/http://articles.techrepublic%2ecom%2ecom/5100-10878_11-6016329.html

주 자신의 프로필에 자신의 시간대가 있으므로이 변환을 서버에서 수행 할 수 있습니다.

0

google의 대부분의 블로그는 .NET이 클라이언트의 시간대를 가져 오는 방법을 제공하지 않는다는 사실을 지적합니다.

  1. 분의 오프셋 (offset) 브라우저의 시간대와 자신의 시간대를 입력하도록 요청하고 데이터

  2. 를 사용하여 반환 자바 스크립트 함수를 표시하기 위해이 정보를 사용 :

    그러나 대부분의 중 하나라고 추가 처리를 위해 서버로 전송하십시오. 참조 : http://weblogs.asp.net/cprieto/archive/2010/01/03/handling-timezone-information-in-asp-net.aspx

관련 문제