2010-04-19 33 views
6

Tôi có một bảng SQL 2008 với một trường có tên là RecDate của kiểu DateTimeOffset.Nhận giá trị DateTimeOffset từ SQL 2008 đến C#

Đối với một kỷ lục cho giá trị là '2010-04-01 17: 19: 23,62 -05: 00'

Trong C# Tôi tạo một DataTable và điền nó với kết quả của "SELECT RecDate TỪ MyTable" .

tôi cần phải nhận được mili giây, nhưng nếu tôi làm như sau các mili giây luôn 0:

DateTimeOffset dto = DateTimeOffset.Parse(dt.Rows[0][0].ToString()); 

cách thích hợp để có được giá trị trong cột RecDate vào biến dto là gì?

Trả lời

9

Có thể việc truyền tới ToString() sẽ xóa thông tin micro giây.

Theo MSDN, loại dữ liệu SQL Server datetimeoffset khớp với C# 's DateTimeOffset. Vì vậy, nên an toàn khi đúc một cột datetimeoffset đến DateTimeOffset.

Ví dụ:

DateTimeOffset dto = (DateTimeOffset) Rows[0][0]; 
+0

Hừ ... đó là đáng xấu hổ! Bạn hoàn toàn đúng. Cảm ơn. – DarLom

Các vấn đề liên quan