2012-11-25 80 views
1

我有一个json数组字符串,我从数据库中获取数据,我需要使用以下格式格式化DateAndTime字段:yyyy -MM-dd hh:mm:ss,它需要是动态的,因为通过的数据总是会有所不同,除了DateAndTimeJson字符串数组格式日期时间字段 - yyyy-MM-dd hh:mm:ss

下面是我迄今尝试过的。

ASPX

var chartData = <%= DataToJSONChart() %>; 
var new_data = [] 
for (var i = 0; i < chartData.length; i++) { 
    var date = new Date(parseInt(chartData[i].DateAndTime.substr(6))); 
    new_data.push(date); 
} 
chartData.tblGeneral = new_data; 

VB

Public Function DataToJSONChart() As String 
Dim dt As DataTable 
Dim ds As New DataSet() 
ds = ChartData(4, DateTime.Parse("2012-06-01 00:00:00"), DateTime.Parse("2012-06-10 23:59:59")) 
dt = ds.Tables(0) 
Dim serializer As System.Web.Script.Serialization.JavaScriptSerializer = New System.Web.Script.Serialization.JavaScriptSerializer() 
Dim rows As New List(Of Dictionary(Of String, Object)) 
Dim row As Dictionary(Of String, Object) 
For Each dr As DataRow In dt.Rows 
row = New Dictionary(Of String, Object) 
For Each col As DataColumn In dt.Columns 
row.Add(col.ColumnName, dr(col)) 
Next 
rows.Add(row) 
Next 
serializer.MaxJsonLength = Int32.MaxValue 
Return serializer.Serialize(rows) 
End Function 

回答

1

您可以通过在服务器端检查其列名称格式日期时间

For Each dr As DataRow In dt.Rows 
    row = New Dictionary(Of String, Object) 
    For Each col As DataColumn In dt.Columns 
     If col.ColumnName = "DateTimeColumnName" Then 
      Dim dt As DateTime = DateTime.Parse(dr(col).ToString()) 
      row.Add(col.ColumnName, dt.ToString("yyyy-MM-dd hh:mm:ss")) 
     Else 
      row.Add(col.ColumnName, dr(col)) 
     End If 
    Next 
    rows.Add(row) 
Next 
+0

非常感谢@Coder。 – user1835316

+0

@ user1835316我的荣幸! – Coder

相关问题