2012-01-23 2 views
0

C#으로 코딩 된 Wpf 브라우저 응용 프로그램이 있는데 문제는 Date.Time.Now가 클라이언트 PC에서 시간을 반환하고 신뢰할 수 없다는 것입니다. 응용 프로그램 서버 또는 MSSQL 서버에서 시간을 얻으려면 어떻게해야합니까?WPF 브라우저 응용 프로그램에서 서버 시간을 얻는 방법?

+0

왜 당신이 쿼리 서버 날짜를 얻을 클라이언트에 표시되지 않습니다 일부에서

볼 수? – jcvegan

+0

당신은 클라이언트 시간과 다른 서버 시간을 얻고 있습니다 .. 또한 서버는 클라이언트와 관련하여 물리적으로 어디에 있습니까? \ – MethodMan

+1

서버의 시간은 무엇입니까? 이것은 서버에서 수행해야하는 클라이언트 측 작업을 수행하려고하는 붉은 깃발의 일종입니다. –

답변

1

서버 현재 시간 스탬프를 원할 경우 SQL 쿼리를 만들어 클라이언트 시스템에 표시하는 데 사용하는 응용 프로그램으로 반환해야합니다.

당신은뿐만 아니라 DateTime.UtcNow를 시도하거나 이러한 예

The following examples use the six SQL Server system functions that return current date and time to return the date, time or both. The values are returned in series; therefore, their fractional seconds might be different. 
A. Getting the current system date and time 

SELECT 'SYSDATETIME()  ', SYSDATETIME(); 
SELECT 'SYSDATETIMEOFFSET()', SYSDATETIMEOFFSET(); 
SELECT 'SYSUTCDATETIME() ', SYSUTCDATETIME(); 
SELECT 'CURRENT_TIMESTAMP ', CURRENT_TIMESTAMP; 
SELECT 'GETDATE()   ', GETDATE(); 
SELECT 'GETUTCDATE()  ', GETUTCDATE(); 
/* Returned: 
SYSDATETIME()   2007-05-03 18:34:11.9351421 
SYSDATETIMEOFFSET()  2007-05-03 18:34:11.9351421 -07:00 
SYSUTCDATETIME()   2007-05-04 01:34:11.9351421 
CURRENT_TIMESTAMP  2007-05-03 18:34:11.933 
GETDATE()    2007-05-03 18:34:11.933 
GETUTCDATE()    2007-05-04 01:34:11.933 
*/ 

B. Getting the current system date 

SELECT 'SYSDATETIME()  ', CONVERT (date, SYSDATETIME()); 
SELECT 'SYSDATETIMEOFFSET()', CONVERT (date, SYSDATETIMEOFFSET()); 
SELECT 'SYSUTCDATETIME() ', CONVERT (date, SYSUTCDATETIME()); 
SELECT 'CURRENT_TIMESTAMP ', CONVERT (date, CURRENT_TIMESTAMP); 
SELECT 'GETDATE()   ', CONVERT (date, GETDATE()); 
SELECT 'GETUTCDATE()  ', CONVERT (date, GETUTCDATE()); 

/* Returned: 
SYSDATETIME()   2007-05-03 
SYSDATETIMEOFFSET()  2007-05-03 
SYSUTCDATETIME()   2007-05-04 
CURRENT_TIMESTAMP  2007-05-03 
GETDATE()    2007-05-03 
GETUTCDATE()    2007-05-04 
*/ 

C. Getting the current system time 

SELECT 'SYSDATETIME()  ', CONVERT (time, SYSDATETIME()); 
SELECT 'SYSDATETIMEOFFSET()', CONVERT (time, SYSDATETIMEOFFSET()); 
SELECT 'SYSUTCDATETIME() ', CONVERT (time, SYSUTCDATETIME()); 
SELECT 'CURRENT_TIMESTAMP ', CONVERT (time, CURRENT_TIMESTAMP); 
SELECT 'GETDATE()   ', CONVERT (time, GETDATE()); 
SELECT 'GETUTCDATE()  ', CONVERT (time, GETUTCDATE()); 
/* Returned 
SYSDATETIME()   18:25:01.6958841 
SYSDATETIMEOFFSET()  18:25:01.6958841 
SYSUTCDATETIME()   01:25:01.6958841 
CURRENT_TIMESTAMP  18:25:01.6930000 
GETDATE()    18:25:01.6930000 
GETUTCDATE()    01:25:01.6930000 
*/